【发布时间】:2016-07-12 20:22:25
【问题描述】:
我在 object 中的 object 中的 object 中有一个 key-pair 对象。 I Object.assign 中间层,所以新对象是对象中的对象。
我将这个新对象作为道具发送。
我可以 console.log 新的父和子并查看对象,但尝试 console.log 最后一个子返回
未捕获的类型错误:无法读取未定义的属性“子”。
瓦关?
obj:
{
Something: Null,
Grandparent: {
SomethinElse: Null,
Parent: {
SomethingMore: Null,
Child: {
SomeValue: "Duck"
}
}
}
newObj:
Child: {
SomeValue: "Duck"
}
然后我设置
this.state.cow: newObj
然后我发送到一个组件并调用
{console.log(this.props.cow)}
对象:{SomeValue: "Duck"}
很好。然后我要么记录要么渲染
{console.log(this.props.cow.SomeValue)}
未捕获的类型错误:无法读取未定义的属性“SomeValue”
非常感谢您对这个相当基本的问题的理解。
export default class AwsReadFunction extends React.Component {
constructor(){
super();
this.state={
main: {},
info: {},
cows: {}
};
} //constructor END
componentDidMount() {
var docClient = new AWS.DynamoDB.DocumentClient()
var table = "Movies";
var year = 1944;
var title = "Lifeboat";
var params = {
TableName: table,
Key:{
"year": year,
"title": title
}
};
docClient.get(params, (err, data) => {
if(err){
console.log(JSON.stringify(err));
} else {
var ca = Object.assign({}, data.Item.info.cows);
this.setState({
main: data.Item,
info: null,
cows: ca
});
}
});
render(){
return (
<div>
<List main={this.state.main} cows={this.state.cows} />
</div>
)
}
}
export default class List extends React.Component {
render(){
return (
<div>
List cows-fish: {this.props.cows.fish} <br />
</div>
)
}
}
【问题讨论】:
-
请将代码的相关部分发布到您解释的执行此操作的位置,截至目前,无法判断错误在哪里。
-
这种店以后会害死你的..
-
你为什么不使用 Redux?
-
A) 将在 home 时加载代码,b) 加载带有最终计划的嵌套 db 对象 c) 使用 redux,但想先了解有关 react 的更多信息
-
显示你的一些代码
标签: javascript object reactjs