をレンダリングし、私のコンポーネントは親コンポーネントからオブジェクトを受け取り、オブジェクトは次のようになります。私の子コンポーネントでReactJS:配列にオブジェクトを回して、だから、
{
_id: Data.now(), // MongoDB database
name: "",
description: "",
image: "images/image.jpg",
type: "image"
}
、私はこのデータを取得し、ANを作りたいですそれぞれの値を入力して値を変更し、新しいデータを保存することができます。
更新回答(ES6クラス):
constructor(props) {
super();
this.state = {
fieldGroups: []
}
this.parseProps = this.parseProps.bind(this);
}
componentWillMount() {
this.parseProps(this.props);
}
componentWillReceiveProps(nextProps) {
this.parseProps(nextProps);
}
parseProps(props) {
var fieldsArray = [];
var content = props.content;
Object.keys(content).map((field,index) => {
if (field === 'type') {
let fieldObj = {};
fieldObj.field = field;
fieldObj.value = content[field];
fieldObj.key = props.content._id + field;
fieldsArray.push(fieldObj);
}
});
this.setState({
fieldGroups: fieldsArray
});
}
render() {
return (
{
this.state.fieldGroups.map((field) => {
if (field.field === "type") {
return (html element specific to type)
} else {
return (a different html element)
}
})
}
)
}
は、だから今は、子コンポーネントがユーザーを表示するフィールドを決定させるという意味で、私の成分を分離することができます。ありがとうDanneManne
この不完全な例では分かりません。このコンポーネントのコードをさらに表示できますか?それはクラスですか?コンストラクタを正しく実装しましたか? https://stackoverflow.com/help/mcve –