element ui select 多选 互斥

609 阅读1分钟

利用 watch监听

   watch: {
    //新增&编辑城市站选择框 全国站与其他城市 互斥
    'aoeparams.cityId': function (val, oldval) {
        let newindex = val.indexOf('100100'), oldindex = oldval.indexOf('100100');   //获取val和oldval里全国站的索引,如果没有则返回-1
        if (newindex != -1 && oldindex == -1 && val.length > 1) {
            this.aoeparams.cityId = ['100100'];     //如果新的选择里有勾选了全国站 则 只勾选全国站
        } else if (newindex != -1 && oldindex != -1 && val.length > 1) {
            this.aoeparams.cityId.splice(val.indexOf('100100'), 1);  //如果操作前有勾选了全国站且当前也选中了全国站且勾选数量大于1  则移除掉全国站
        }

    }
}