首页 > 解决方案 > 如何修复 VueJS 中的“未定义属性或方法”错误

问题描述

将数组道具从父组件传递给子组件我可以看到使用 vue-devtools 成功传递的道具数组,但是当我尝试渲染时:

<template :v-for="(item, index) in messages_array">

我得到:

vue.runtime.esm.js?2b0e:619 [Vue 警告]:属性或方法“item”未在实例上定义,但在渲染期间被引用。通过初始化该属性,确保该属性是反应性的,无论是在数据选项中,还是对于基于类的组件。

我希望v-for迭代提供的道具。

下面是代码图像的链接...尝试将它们粘贴到此处,但无法正确格式化它们。

单个文件组件接收道具

组件接收道具脚本

父组件

父组件脚本

标签: vuejs2vue-componentvuetify.js

解决方案


使用v-for代替:v-for应该可以解决您的问题:

<template v-for="(item, index) in messages_array">

完整的文档可以在这里找到: https ://vuejs.org/v2/guide/list.html#Mapping-an-Array-to-Elements-with-v-for


推荐阅读