vue.js - 在 console.log 中未定义但 vue 控制台显示正确的值
问题描述
我是 vue 新手,我无法通过控制台记录 this.productVal.name,只能得到未定义,但 vue 控制台扩展显示我所有的值都是正确的。
export default {
props: ['productVal'],
created() {
console.log(this.productVal.name);
},
}
这就是我要去子组件的方式
<child-product v-if="product" :product-val="product"></child-product>
谁能告诉我为什么它不起作用?
解决方案
我不确定缺少信息的原因,但如果它是子组件,请转到父组件并添加v-if="productVal"
到子组件标签。其原因可能是当您创建此组件时,您的 prop 值尚未初始化,因此您无法读取name
of productVal
prop 值,因此您得到了未定义。
例子
你的父组件中可能有这样的东西:
<template>
<child-component :product-val="productVal">
</template>
所以将其更改为:
<template>
<child-component v-if="productVal" :product-val="productVal">
</template>
它应该可以正常工作。
推荐阅读
- oracle-apex - 在 Oracle Apex 经典报告中显示星级
- python - werkzeug 的 LocalProxy.__local,它在哪里初始化?
- javascript - JSON 数组项返回未定义
- spring-data-jpa - Spring JPA 在 @Embeddable 类中使用主键
- swift - Firebase swift跨应用用户共享不起作用
- javascript - 如何从容器对象中过滤非空对象?
- c - 如何在我的 C 代码中跟踪核心转储?
- c# - 如何解决这个二阶方程计算?
- django - 如何使用 DRF JWT resfresh
- apache-camel - 无法使用骆驼占位符在 application.properties 中设置 azure blobname