无法绑定v-on:点击Vuetify [Vue警告]:v-on处理程序出错:“类型错误:处理程序,apply不是函数”

v8wbuo2f  于 2023-03-13  发布在  Vue.js
关注(0)|答案(3)|浏览(214)

我尝试在动态生成的子标题v-list-tile Vuetify https://vuetifyjs.com/en/components/subheaders上绑定一个单击事件,但每次单击该选项时都会出现错误。

vue.js:634 [Vue warn]: Error in v-on handler: "TypeError: handler.apply is not a function"

found in

---> <VListTile>
       <VList>
         <VCard>
           <VApp>
             <Root>

我试过强制添加这些方法(不传递object),效果很好。它只是在传递给对象并动态呈现时触发。
下面是我遇到的bug的Codepen
我所期望的是触发被调用的方法而不触发错误

ct2axkht

ct2axkht1#

我的方法在Data对象内部。它们应该在同一级别。
Codepen example中,将函数名从数据对象中取出,只留下数字id
通过在@click事件上调用函数并在那里传递数字,使方法工作。

bcs8qyzn

bcs8qyzn2#

这发生在我身上,因为我在HTML标记上编写了类似的代码:

@something="colorList"

这里colorList是一个javascript对象数组,你需要写一个函数来传递值,然后在函数中设置值:

<... @something="updateColorList" ...>

methods

updateColorList(newColorParameter): {
    this.colorList = newColorParameter
}
xtfmy6hx

xtfmy6hx3#

在我的例子中,我正在监听一个从子组件发出的事件,并且对接收到的值不做任何处理:

<my-component @hide="show" v-if="show"/>

我应该在收到值时更改该值:

<my-component @hide="show = $event" v-if="show"/>

希望能帮上忙。

相关问题