Vuejs - 无法读取未定义的属性“_withTask”

Pc *_*onk 5 javascript vue.js vuejs2

按下按钮后,我正在尝试将新的 html 添加到我的 div 中,使用v-for.
但是在我按下按钮后,我收到此错误并且元素(文章)被添加到 div 一次,但之后它将不再起作用。

vue.js?3de6:1743 TypeError: 无法读取属性 '_withTask' of undefined
at remove$2 (eval at (app.js:561), :7078:13)
at updateListeners (eval at (app.js:561), : 2067:7)
at Array.updateDOMListeners (eval at (app.js:561),:7091:3)
at patchVnode (eval at (app.js:561), :5918:62)
at updateChildren (eval at ( app.js:561),:7091:3) js:561), :5809:9)
at patchVnode (eval at (app.js:561), :5923:29)
at updateChildren (eval at (app.js:561), :5809:9)
at patchVnode (eval at (app.js:561), :5923:29)
at updateChildren (eval at (app.js:561), :5809:9)
at patchVnode (eval at (app.js:561), :5923:29)

HTML代码:

<article v-for="item in range">
    <span>
        {{item[0]}} - {{item[1]}}
    </span>
    <span>
        <button  class="btn btn-theme btn-default btn-xs pull-left"  @click="deleteItem" ><i class="fa fa-times inline"></i></button>
    </span>
</article>
Run Code Online (Sandbox Code Playgroud)

JS:

data() {
    return {
        majornew:this.major,
        certificate:this.cert,
        range:[], 
        item:[],
    };
},

methods: {
    addmajorcert(majortext,certext) {
        this.item = [majortext,certext];
        this.range.push(this.item);
        console.log(majortext,certext);
    },
},
Run Code Online (Sandbox Code Playgroud)

更新:有两个选择框可以发送值

<v-select v-model="selectedmajor" label="major_text" id="major" name="majornew" :options="majornew" >
</v-select> 
<v-select v-model="selectedcert" :options="certificate" label="lc_text" id="cert" v-on:click="certificate"></v-select> 

<button v-on:click="addmajorcert(selectedmajor,selectedcert)">
    +
</button>
Run Code Online (Sandbox Code Playgroud)

选择框返回一个对象,如:

{ "major_id": 2, "major_text": "industrial", "number_of_used": 1 }
Run Code Online (Sandbox Code Playgroud)

当我执行 a 时,console.log我可以看到正在传递的值。

Man*_*ill 6

我有同样的问题,那是因为我正在使用一个事件,但它没有在脚本中定义,这里是示例问题:

<template>
 <div>
  <button @click="deleteItem"></button>
 </div>
</template>
Run Code Online (Sandbox Code Playgroud)

所以你可以看到我正在使用deleteItem方法,但在方法对象下面的脚本中,我没有使用该名称的函数。这导致我错误_withTask。我认为这可以是其他人。

<script>
 export default {
  methods: {
   // No function with name deleteItem
  }
 }
</script>
Run Code Online (Sandbox Code Playgroud)

基本上,当事件函数在简单语言中未定义时会导致错误:)


Ahm*_*med 3

这是我的尝试,
链接中的代码


照片中的代码


如果您有不明白的地方或者我错过了什么,请告诉我。

  • 感谢你和Sirence js,我发现我做错了什么,最糟糕的是修复它后我仍然遇到同样的错误,我发现我有一些未在方法中定义的点击方法,它们导致了也有错误。再次感谢你们俩 (2认同)