【发布时间】:2019-10-24 02:01:33
【问题描述】:
我正在尝试重用我在组件文件中创建的自定义下拉列表,其中 props 是下拉列表中的值选项。当我开始选择下拉菜单时,我意识到 vue 警告消息:
[Vue 警告]:避免直接改变 prop,因为每当父组件重新渲染时,该值都会被覆盖。相反,使用基于道具值的数据或计算属性。正在变异的道具:“item”
最佳实践是什么以及我应该如何编写才能不具有道具变异值?
<template>
<v-app>
<SearchSelect
v-model="newItem.a"
:options="aList"></SearchSelect>
<SearchSelect
v-model="newItem.b"
:options="bList"></SearchSelect>
<SearchSelect
v-model="newItem.c"
:options="cList"></SearchSelect>
</v-app>
</template>
<script>
export default {
name: "Sales",
data() {
return {
aList: [
{ value: "A1", text: "A1" },
{ value: "A2", text: "A2" },
{ value: "A3", text: "A3" },
{ value: "A4", text: "A4" },
{ value: "A5", text: "A5" }
],
bList: [
{ value: "B1", text: "B1" },
{ value: "B2", text: "B2" },
{ value: "B3", text: "B3" }
],
cList: [
{ value: "C1", text: "C1" },
{ value: "C2", text: "C2" },
{ value: "C3", text: "C3" }
],
}
}
}
};
</script>
【问题讨论】:
-
请分享
<SearchSelect />组件的代码。
标签: javascript vue.js