【发布时间】:2020-02-29 23:11:34
【问题描述】:
我正在尝试将单击按钮时发送到组件的道具数据更新为vue 中的单个组件。
按钮点击触发一个动作,从配置中加载数据。但这会引发错误并且错误消息不清楚。在这里找到错误https://imgur.com/a/0psUWKr
如果我直接传递数据而不使用按钮操作,它可以正常工作。
我的主要组件
<template>
<div>
<MyList v-if="listItems" :elements="listItems"/>
<button @click="showSlider">Show Slider</button>
</div>
</template>
<script>
// imports the components and config files
export default {
name: "ListView",
data() {
return {
listItems: []
};
},
components: {
MyList
},
methods: {
showSlider: function() {
this.listItems.push(configs['elements'])
},
</script>
注意:如果我默认将数据提供给listItems,它会起作用
还有MyList文件
<template>
<ul>
<li v-for="each in elements" :key="each.id">
{{each.name}}
</li>
</ul>
<template>
<script>
// imports the components and config files
export default {
name: "MyList",
props: {
elements: {
type: Array
}
}
</script>
【问题讨论】:
-
当我没有声明我的组件或在声明中有错字时,这通常发生在我身上。我建议你在你的 IDE 上安装一个
linter来为你检查一切。 -
你引用的按钮点击函数在哪里?
-
@MojoAllmighty 我已经安装了 linter。这是我检查的第一件事,没有发现此类问题
-
@maembe 错过了抱歉。更新了代码。请检查一下
-
当你调用
listItems(configs['elements'])时你不应该使用this.listItems(configs['elements'])吗?
标签: javascript vuejs2 vue-component vue-events