console
var app = new Vue({
el: '#app',
data () {
return {
data: this.getMockData(),
targetKeys: this.getTargetKeys()
}
},
methods: {
getMockData () {
let mockData = [];
for (let i = 1; i <= 20; i++) {
mockData.push({
key: i.toString(),
label: 'Content ' + i,
description: 'The desc of content ' + i,
disabled: Math.random() * 3 < 1
});
}
return mockData;
},
getTargetKeys () {
return this.getMockData()
.filter(() => Math.random() * 2 > 1)
.map(item => item.key);
},
render (item) {
return `<span title="${item.key}+${item.label}">${item.label}</span>`;
},
handleChange (newTargetKeys, direction, moveKeys) {
console.log(newTargetKeys);
console.log(direction);
console.log(moveKeys);
this.targetKeys1 = newTargetKeys;
}
}
});
<div id="app">
<Transfer
:data="data"
:target-keys="targetKeys"
:render-format="render"
@on-change="handleChange"></Transfer>
</div>