VueJS-事件&单击&无效的处理程序:未定义

我有一系列元素,我想在单击它们时进行编辑。 我在其他组件中有类似的解决方案,它工作得很好,但在新的组件中却不是,也找不到原因。

呈现组件时,我得到: Invalid handler for event "click": got undefined

列表:

<div v-for="annt in anns" class="item two-lines" v-if="!anntInEdit">
          <div class="item-content has-secondary" v-on:click="edit(annt)">
            <div>
              {{ annt.title }}
            </div>
            <div >
              {{ annt.body}}
            </div>
          </div>
          <div class="item-secondary">
          <a><i >delete</i></a>
          </div>
        </div>

JS:

edit (annt) {
        if (this.anntInEdit == null) {
          this.anntInEdit = annt
          this.anntInEditBackup = Object.assign({}, this.anntInEdit)
        }
        this.anntInEditIndex = this.anns.indexOf(annt)
      },
当我只需单击时,我在EDIT SNF div中收到通知,并显示表单,我可以使用SAVE(AJAX)、Cancel(只需将Inedit设置为空)等,但只要我触摸EDIT div中的任何输入,我就会得到: [Vue warn]: Invalid handler for event "click": got undefined vue.common.js?e881:1559 Uncaught (in promise) TypeError: Cannot read property 'invoker' of undefined 一旦我收到错误,编辑中的任何按钮都不起作用。

相同的div用于新建/编辑,并且完全适用于新的公告。 有什么想法吗?

整个组件粘贴:http://pastebin.com/JvkGdW6H


解决方案

收到。它不是关于顶层功能@click。 当调用顶层单击时,将呈现的元素大约为@click。我的函数名有一个拼写错误。 不幸的是,Vue没有抛出丢失的函数的名称,这就是我找不到它的原因,因为我找错了地方...

相关文章