无法访问状态对象属性
2017-09-29
155
在 state 中,我有一个带有 propertyA 的对象 a。propertyA 是一个数组。我在渲染对象 a 时使用 console.log 可以看到带有值的 propertyA。当我尝试使用 console.log a.propertyA 时,我得到了 undefined,但在 this.state.a 中使用相同数据渲染视图时,它可以正常工作。如何在第一次渲染时访问 propertyA?
const A = this.state.a;
console.log( A, A.financial);
// gives out
{a: [{...}, {...}, {...}]}, undefined
2个回答
const A = this.state.a;
console.log( a, A.financial);
// gives out
{a: [{...}, {...}, {...}]}, undefined
from the above code it seems that,
this.state.a
is an Array of objects.A.financial
will beundefined
asfinancial
is not property ofA
console.log( a, A[0].financial);// should have output where 0 is array index.
console.log(A.hasOwnProperty('financial))//should be false.
Ved
2017-09-29
问题在于数据是通过承诺获取的。承诺并不正确。这就是为什么在所有数据可用之前设置状态的原因。
vuvu
2017-09-29