javascript - 无法读取未定义的属性 'MyProperty'

标签 javascript json angular

在我的 Angular2 模板中,我有以下绑定(bind):

{{Stringify(result)}}
{{result.MyProperty}}

Stringify 是一个返回输入对象的 JSON.stringify 的函数。 Stringify 函数返回了一个 JSON 字符串,其中显示了 MyProperty 的名称和值。

然而,第二行返回一个

TypeError. Cannot read property 'MyProperty' of undefined in {{result.MyProperty}}.

JSON.stringify 清楚地表明此属性/字段存在,那么为什么我会收到错误?

最佳答案

如果它在那里,它就可以被访问并且 JS 不会抛出

试试看

{{result?.MyProperty}}

也许 Angular 在 result 有值之前尝试访问 result.MyPropertyStringify(result) 不会阻塞 。 当 result 同时更新时(可能是因为值是从服务器接收到的, View 会在您意识到之前显示的是空字符串之前更新。
您的问题没有提供足够的背景信息。

另见

关于javascript - 无法读取未定义的属性 'MyProperty',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35717850/

相关文章:

javascript - 未捕获的类型错误 : Cannot read property 'textContent' of null error

javascript - ESLint 和普通控制台错误有什么区别?

php - 在 MySQL 中获取行并返回 JSON

java - Gson 强制使用 int 而不是 double

sqlite - 如何通过服务加载多个数据并在 Angular2 中等待

javascript - 检查数组的所有值是否属于同一类型

javascript - 内容可编辑 div 中的单选按钮

javascript - 文本未按正确顺序显示

angular - 直接从http(observable)服务(函数)返回结果,而不返回Observable

css - 如何显示 ng-select 的验证状态?