JSFiddle - React, Tailwind, and code Playground
by jonwang
HTML
<script src="//unpkg.com/vue/dist/vue.js"></script>
<script src="//unpkg.com/element-ui/lib/index.js"></script>
<div id="app">
<el-table
:data="tableData"
style="width: 100%">
<el-table-column
prop="date"
label="日期"
width="180">
</el-table-column>
<el-table-column
prop="name"
:formatter="formatter"
label="姓名"
width="180">
</el-table-column>
<el-table-column
prop="address"
label="地址">
</el-table-column>
</el-table>
<el-alert title="请将鼠标在表格上上下移动,以下是formatter重新渲染输出内容" type="warning"></el-alert>
</div>
<div id="logs" style="height:200px;overflow:auto"></div>
CSS
@import url("//unpkg.com/element-ui/lib/theme-chalk/index.css");
JavaScript
var Main = {
data() {
return {
tableData: [{
date: '2016-05-02',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-04',
name: '王小虎',
address: '上海市普陀区金沙江路 1517 弄'
}, {
date: '2016-05-01',
name: '王小虎',
address: '上海市普陀区金沙江路 1519 弄'
}, {
date: '2016-05-03',
name: '王小虎',
address: '上海市普陀区金沙江路 1516 弄'
}]
}
},
methods: {
formatter(row, column, cellValue, index) {
var log = 'render-' + index +', value: '+ cellValue + ', time: ' + new Date().getTime();
var obj = document.getElementById('logs');
var div = document.createElement('div');
div.innerHTML = log
obj.appendChild(div);
obj.scrollTop = 999999;
console.log(log);
return 'f-' + cellValue;
}
}
}
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')