首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >未捕获的类型错误:无法读取未定义的属性'splice‘

未捕获的类型错误:无法读取未定义的属性'splice‘
EN

Stack Overflow用户
提问于 2018-09-03 03:41:16
回答 1查看 779关注 0票数 0
代码语言:javascript
复制
<script>
  export default {
    props: ['propsdata'],
    methods: {
      removeTodo(todoItem, index) {
        localStorage.removeItem(todoItem);
        this.todoItems.splice(index, 1);
      }
    }
  }
</script>
代码语言:javascript
复制
<template>
  <section>
    <ul>
      <li v-for = "(todoItem, index) in propsdata" class = "shadow">
        <i class = "checkBtn fas fa-check" aria-hidden = "true"></i>
        {{ todoItem }}
        <span class = "removeBtn" type = "button" @click = "removeTodo(todoItem, index)">
          <i class = "fas fa-trash" aria-hidden = "true"></i>
        </span>
      </li>
    </ul>
  </section>
</template>

未捕获的类型错误:无法读取未定义的属性'splice‘。这些错误仍在继续发生。请帮帮我。

EN

回答 1

Stack Overflow用户

发布于 2018-09-03 06:06:14

当您在组件方法中引用this.todoItems时,Vue期望该方法要么来自传入的props,要么来自使用组件定义的data,或者作为computed属性。

从模板

代码语言:javascript
复制
<li v-for = "(todoItem, index) in propsdata" class = "shadow">
                                  ^^^^^^^^^

在我看来,你所说的todoItems要么是1) propsdata,要么是propsdata中的一个属性。如果我们看的是选项1),那么将propsdata重命名为todoItems,反之亦然。如果是2),那么不是引用this.todoItems,而是执行this.propsdata.todoItems

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52140464

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档