Vue.js - 列表實作
https://vuejs.org/v2/guide/
我對Vue.js感到好奇,
所以我實作了一下,在實作列表頁,我就不必用PHP端吐整個html,也不用前端用jquery產生大量的tr或div及另外生產template,就可以實現列表頁動態生成
我今天有一個列表頁是實作歷史紀錄,
以下是我撰寫的Vue.js及html
<div id="list">
<div v-for="item in items" class="col-lg-12">
<div>
<div class="col-lg-9 col-md-9 col-xs-9">
{{ getReportName(item.name)}}
</div>
</div>
<div>
<div>
<div class="col-lg-4 col-md-4">
建立時間
</div>
<div class="col-lg-8 col-md-8">
{{item.createTime}}
</div>
</div>
</div>
</div>
</div>
var app = new Vue({
el: '#list',
data: {
items: []
},
methods:{
getReportName: function(key){
var ReportNames= new Object();
ReportNames['day'] = '日報表';
ReportNames['week'] = '週報表';
ReportNames['month'] = '月報表';
return ReportNames[key];
}
}
});
當我ajax取得搜尋資料回來後,將items重新設定,就會自動的更新列表資訊
function search() {
var data= new Object();
$.ajax({
type: 'POST',
url: '/history/search',
data: data,
dataType: "json",
success: function(result){
app.items = result.items;
}
});
}
$(document).ready(function(){
search();
});
感謝還不錯用,可以省下時間去寫jquery生成,或PHP的<?php ?>之間的段落
當前端與後端分離時,後端只要吐items,前端取得items自己寫,可以很快的前後端分開工作,加上前端這段程式碼,可以重複利用,變更欄位資料,也會變得相當簡單。
也不擔心會產生奇怪的PHP error