gpt4 book ai didi

javascript - 在 ReactJS 中传递 props 并且它们不会加载,同时收到目标容器错误?

转载 作者:行者123 更新时间:2023-11-28 05:21:01 27 4
gpt4 key购买 nike

希望有人能够阐明我最近遇到的问题。我正在尝试为某人创建一个登陆页面来编辑一些个人资料信息(用户名、电子邮件等)。问题是当我将 Prop 从一个函数传递到另一个函数时,它们加载为未定义。相关代码如下...

class ChangeFields extends React.Component {
constructor(props) {
super(props);
this.state = {
user: [
{
username: "test"
}
]
}
}
render() {
const formSample = (
<div>
<h3>Account Information:</h3>
<br></br>
<CurrentInfo user={this.state.user} onItemSelect={this.updateInfo()} />
</div>
);
return formSample;
}
}

const CurrentInfo = ({user, onItemSelect}) => {
console.log(user.username);
const formElement = (
<Form horizontal>
<FormGroup controlId="formHorizontalUsername">
<Col componentClass={ControlLabel} sm={2}>
{user.username}
</Col>
<Col sm={10} value={user.username}>
<FormControl controlId="testControl" value={user.username} />
</Col>
</FormGroup>
</Form>
);
return formElement;
};

不幸的是,CurrentInfo block 中的“user.username”输出为未定义。有什么见解吗?注意:这是代码的简化版本,如果需要更多代码,我可以提供。

还值得注意的是,我收到一条警告:未捕获错误:_registerComponent(...):目标容器不是 DOM 元素。

我尝试将 index.html 中的行移至底部,正如其他人所建议的那样,但这并不能解决问题。

最佳答案

Unfortunately, the "user.username" in the CurrentInfo block outputs as undefined. Any insight?

这个:

this.state = {
user: [
{
username: "test"
}
]
}

应该是:

this.state = {user: {username: "test"}};

您当前正在将 user 属性设置为数组。

It is also worth noting, that I receive a warning of: Uncaught Error: _registerComponent(...): Target container is not a DOM element.

这可能发生在您问题之外的代码中。

关于javascript - 在 ReactJS 中传递 props 并且它们不会加载,同时收到目标容器错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40559068/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com