Vue.js Vuetify创建2个相关的v-select

Vue.js Vuetify创建2个相关的v-select,vue.js,vuetify.js,Vue.js,Vuetify.js,是否有任何方法可以更改Alist v-select,将基于Alist项的内容更改为ajax,并将结果应用于Blist项循环?这就是我为整合所做的。但它显示:避免直接修改道具,因为每当父组件重新渲染时,该值将被覆盖。相反,使用基于道具值的数据或计算属性。道具正在变异:“道具” 导出默认值{ 数据(){ Blist:[], 列表:[], }, 方法:{ 更新列表(索引、值){ //获取组任务列表 axios .get(“/api/Blist/list/”+值) 。然后((resp)=>{ 此.re

是否有任何方法可以更改Alist v-select,将基于Alist项的内容更改为ajax,并将结果应用于Blist项循环?这就是我为整合所做的。但它显示:
避免直接修改道具,因为每当父组件重新渲染时,该值将被覆盖。相反,使用基于道具值的数据或计算属性。道具正在变异:“道具”


导出默认值{
数据(){
Blist:[],
列表:[],
},
方法:{
更新列表(索引、值){
//获取组任务列表
axios
.get(“/api/Blist/list/”+值)
。然后((resp)=>{
此.refs.$Blist${index}`][0]。项=[];
_.forEach(resp.data.data,(值,键)=>{
var tmp={
text:value.name,
value:value.uuid,
};
这个.refs.$Blist${index}`][0].items.push(tmp);
});
});
}
}
}

将列表选择和Blist选择放在子组件中,这样就不必处理数组索引。如果您想在父组件中获得Blist的值,只需发出它

比如:

子组件

<template>
<td>
    <v-select style="width: 250px" :items="Alist" label="Purchase Order" @change="updateBlist"></v-select>
</td>
<td>
    <v-select style="width: 250px" :items="Blist" label="Group Tasks"></v-select>
</td>
</template>
<script>
export default {
    data() {
        Blist: [],
        Alist: [],
    },
    methods: {
        updateBlist(value) {
            // Get Group Task List
            axios
                .get("/api/Blist/list/" + value)
                .then((resp) => {
                    this.Blist = resp.data.data.map(value=>({
                       text: value.name,
                       value: value.uuid,
                    }))
                });
        }
    }
}
</script>
<tr v-for="(item, index) in list" :key="index">
   <ChildComponent />
</tr>


导出默认值{
数据(){
Blist:[],
列表:[],
},
方法:{
更新列表(值){
//获取组任务列表
axios
.get(“/api/Blist/list/”+值)
。然后((resp)=>{
this.Blist=resp.data.data.map(值=>({
text:value.name,
value:value.uuid,
}))
});
}
}
}
父组件

<template>
<td>
    <v-select style="width: 250px" :items="Alist" label="Purchase Order" @change="updateBlist"></v-select>
</td>
<td>
    <v-select style="width: 250px" :items="Blist" label="Group Tasks"></v-select>
</td>
</template>
<script>
export default {
    data() {
        Blist: [],
        Alist: [],
    },
    methods: {
        updateBlist(value) {
            // Get Group Task List
            axios
                .get("/api/Blist/list/" + value)
                .then((resp) => {
                    this.Blist = resp.data.data.map(value=>({
                       text: value.name,
                       value: value.uuid,
                    }))
                });
        }
    }
}
</script>
<tr v-for="(item, index) in list" :key="index">
   <ChildComponent />
</tr>



您尝试了什么,您的
//Todo:Ajax获取B个列表项并应用于Blist是正确的
那么您做了什么来实现这一点?@AJT82我想要的是,当我选择一个列表某个值时,Blist select项将基于Alist值来更改Blist选项。喜欢选定的国家,然后选择地区关系是的,我理解。但规则规定,你需要在你已经尝试过的事情上表现出你的努力。所以不是免费的编码服务:)