首先说一下大致情况,vue+element+vuex技术栈,有多个相互关联的二维数组,使用el-select下拉框,都支持多选。
比如说国家->省->县 三个层级关系,国家选择了中国和印度,然后省的下拉框备选options要过滤出来这两个国家的省的数据,然后选择多个省,则过滤出下面的县。
所有的数据都是通过vuex获取到的,下拉框的数据需要根据选择条件过滤出来。
我是用了computed+watch组合动态的改变下拉框的options的,感觉有点卡顿,其实也可以使用 监听change事件+事件钩子 的方案。
我想知道两种方案哪种性能会好一些
----------------------分割线----------------------
我再补充一点吧
数据类似:
let provinces = [{
code: 'GD',
mame_cn: '广东省',
name_en: 'guagndongs',
district: [{
code: 'ADSD',
name_cn: '广东省县A',
name_en: 'axxxx'
}, {
code: 'ADSD123',
name_cn: '广东省县B',
name_en: 'axxxx'
}, {
code: 'ADSD',
name_cn: '县c',
name_en: 'axxxx'
}]
}, {
code: 'GX',
mame_cn: '广西省',
name_en: 'guagndongs',
district: [{
code: 'A12DSD',
name_cn: '广西省县A',
name_en: 'axxxx'
}, {
code: 'ADSD',
name_cn: '县b',
name_en: 'axxxx'
}, {
code: 'ADSD',
name_cn: '县c',
name_en: 'axxxx'
}]
}, {
code: 'HN',
mame_cn: '湖南省',
name_en: 'guagndongs',
district: [{
code: 'A12DSD',
name_cn: '县A',
name_en: 'axxxx'
}, {
code: 'sad',
name_cn: '县B',
name_en: 'axxxx'
}, {
code: 'ADSD',
name_cn: '县C',
name_en: 'axxxx'
}]
}]
vue中有选择国家、省,县的下拉框,比如选择了中国和印度,省的下拉框的options数组,只显示中国和印度的省,其他的都过滤,省的下拉框用户选择了广东省、广西省和印度的某个邦比如A,则县这一级的下拉框的options要过滤出省这一级选择数据下面的下级单位。
具体实现过程没有问题,现在的问题是怎么优化