我遇到以下错误:
TypeError:无法读取未定义的属性“名称”
Vue文件:
edit(id) {
this.users = this.fields[id];
console.log(this.users);
},
脚本:
a = [1, 2, 3, 4]
答案 0 :(得分:0)
当您尝试访问尚不存在的对象的属性时,通常会发生此错误(通常是因为它是异步创建的,例如带有API请求)。如果是这种情况,只需告诉模板等待对象通过v-if存在。
<template v-if="fields && fields.data">
<tr v-for="user in fields.data" :key="user.id">
<td>{{ user.id }}</td>
<td>{{ user.name }}</td>
<td>{{ user.email }}</td>
<td>{{ user.password }}</td>
<td>
<a href="#" data-toggle="modal" data-target="#modal" @click="edit(user.id)">
<span class="btn btn-primary">
<i class="mdi mdi-edit"></i>
</span>
</a>
</td>
</tr>
</template>
请记住,您不能将v-if设置在与v-for相同的标签上。