2 回答

TA貢獻2011條經驗 獲得超2個贊
this.data沒有定義。您可以使用訪問狀態中設置的數據this.state.data
請確保this.props.location.state.data不為空
class A extends React.Component {
state = {
data: {}
};
componentDidMount() {
// this.data = this.props.location.state.data; => not required.
this.setState({
data: this.props.location.state.data
});
}
render() {
return ( <
div > {
Object.keys(this.state.data).map((key, index) => ( <
p key = {
index
} > value is {
this.state.data[key]
} < /p>
))
}
hello <
/div>
);
}
}

TA貢獻1809條經驗 獲得超8個贊
從狀態中獲取數據而不是this.data因為它不會在this.data更新時觸發渲染。也{}用作默認值
class A extends React.Component {
state = {
data: {}
};
componentDidMount() {
const data = {
id: 1,
userName: "ABDXY",
date: "01/12/2020",
time: "21:00"
};
this.setState({ data });
}
render() {
const { data } = this.state;
return (
<div>
{Object.keys(data).map((key, index) => (
<p key={index}> value is {data[key]}</p>
))}
hello
</div>
);
}
}
export default A;
添加回答
舉報