因此,我一直在尝试在功能组件中使用usestate()挂钩,并且一直在尝试使用在表单输入字段中作为道具传递的信息。我可以直接使用道具就好了。但是当我尝试在Usestate()中使用它时,它只是显示为未定义。
像这样:
const [state, setstate] = useState({
title: prop1.title,
});
这就是组件内部的外观
function Functionname({ prop1}) {}
这是父级的构造函数
constructor(props) {
super(props);
this.state = {
prop1: {},
}
获取方法
fetch(`api/SampleData/GetProp1/${this.props.match.params.prop1Id}`)
.then(response => response.json())
.then(data => {
this.setState({ prop1: data});
});
父母的回报
return (
<div>
<Prop1component prop1={this.state.prop1} />
</div>
);
对不起,如果我错过了一些信息,并预先感谢
编辑:添加了更多信息。
edit 2:Max指出,如果我只是在构造函数中定义状态,而不是在必须获取数据时,则应该将{prop1.title}更改为prop1.title。
答案 0 :(得分:0)
我不知道我是否了解得很好,但这是否是函数声明:
function Functionname({ prop1}) {}
那么我认为使用状态可能是:
const [state, setstate] = useState({
title: prop1.title,
});