This commit is contained in:
梁灏 2018-12-24 14:12:32 +08:00
parent 7fe58637f4
commit c736b0f1e0
2 changed files with 69 additions and 49 deletions

View file

@ -1,61 +1,77 @@
<template> <template>
<Cascader :data="data4" :load-data="loadData"></Cascader> <div>
<Row>
<i-col span="18">
<i-button v-on:click="setValue">setValue</i-button>
</i-col>
<i-col span="4">
<Cascader :data="data" v-model="value1" transfer></Cascader>
</i-col>
</Row>
</div>
</template> </template>
<script> <script>
export default { export default {
data () { data () {
return { return {
data4: [ value1: [],
{ data: [{
value: 'beijing', value: '9ecec83c-cf6b-4cfe-aa75-eb3510875331',
label: '北京', label: '北京',
children: [], children: [{
loading: false value: 'a873a9bd-7d75-4f46-9369-4d25a1feb13c',
}, label: '故宫'
{ }, {
value: 'hangzhou', value: 'tiantan',
label: '杭州', label: '天坛'
children: [], }, {
loading:false value: 'wangfujing',
} label: '王府井'
] }]
}, {
value: 'ca7c0fbc-728d-42e8-b111-f5f73cf9171b',
label: '江苏',
children: [{
value: 'a89d891b-5c50-44c0-87b4-d4f934edc921',
label: '南京',
children: [{
value: '44736384-0ede-41ba-bf7a-59c84241851a',
label: '夫子庙中国第一庙来自南京',
children:[{
value: '44736384-0ede-41ba-bf7a-59c84241851c',
label:'自定义产品系统来自黑龙江地区'
}]
}]
}, {
value: 'suzhou',
label: '苏州',
children: [{
value: 'zhuozhengyuan',
label: '拙政园',
}, {
value: 'shizilin',
label: '狮子林',
}]
}],
}]
} }
}, },
methods: { methods: {
loadData (item, callback) { setValue() {
item.loading = true; var v = "ca7c0fbc-728d-42e8-b111-f5f73cf9171b,a89d891b-5c50-44c0-87b4-d4f934edc921,44736384-0ede-41ba-bf7a-59c84241851a";
setTimeout(() => { var x = v.split(',')
if (item.value === 'beijing') { var x1 = x[0].toString();
item.children = [ var x2 = x[1].toString();
{ var x3 = x[2].toString();
value: 'talkingdata',
label: 'TalkingData' this.value1 = x;
},
{
value: 'baidu',
label: '百度'
},
{
value: 'sina',
label: '新浪'
}
];
} else if (item.value === 'hangzhou') {
item.children = [
{
value: 'ali',
label: '阿里巴巴'
},
{
value: '163',
label: '网易'
}
];
}
item.loading = false;
callback();
}, 1000);
} }
},
mounted () {
} }
} }
</script> </script>
<style>
</style>

View file

@ -59,8 +59,8 @@
handleTriggerItem (item, fromInit = false, fromUser = false) { handleTriggerItem (item, fromInit = false, fromUser = false) {
if (item.disabled) return; if (item.disabled) return;
const cascader = findComponentUpward(this, 'Cascader');
if (item.loading !== undefined && !item.children.length) { if (item.loading !== undefined && !item.children.length) {
const cascader = findComponentUpward(this, 'Cascader');
if (cascader && cascader.loadData) { if (cascader && cascader.loadData) {
cascader.loadData(item, () => { cascader.loadData(item, () => {
// todo // todo
@ -110,6 +110,10 @@
fromInit: fromInit fromInit: fromInit
}); });
} }
if (cascader) {
cascader.$refs.drop.update();
}
}, },
updateResult (item) { updateResult (item) {
this.result = [this.tmpItem].concat(item); this.result = [this.tmpItem].concat(item);