私は私が欲しいもの設定と状態を更新するには、ドロップダウンコンポーネントとJSに反応材質UIから
、Webサービスを呼び出し、マテリアルUIからのドロップダウンコンポーネントにそのWSから来る名前が表示され、コードのこの部分を持っていますWSの最初の要素でドロップダウンのデフォルト値を設定し、ドロップダウンで任意のオプションを選択できるようにするために、 "州"について読んでいますが、本当にうまくいきませんコードレベル。
私は自分自身で反応し、学習するのが初めてですが、いくつかの助けがうまくいくでしょう。
import React, { Component } from 'react';
import DropDownMenu from 'material-ui/DropDownMenu';
import MenuItem from 'material-ui/MenuItem';
export default class WebserviceTest extends Component {
constructor(props) {
super(props);
this.state = {
data: [],
};
this.renderOptions = this.renderOptions.bind(this);
}
componentDidMount() {
const url = 'https://randomuser.me/api/?results=4';
fetch(url)
.then(Response => Response.json())
.then(findResponse => {
console.log(findResponse);
this.setState({
data: findResponse.results
});
});
}
//will set wahtever item the user selects in the dropdown
handleChange(event, index, value) {this.setState({ value });}
//we are creating the options to be displayed
renderOptions() {
return this.state.data.map((dt, i) => {
return (
<div key={i}>
<MenuItem
label="Select a description"
value={dt.name.first}
primaryText={dt.name.first} />
</div>
);
});
}
render() {
return (
<div>
<DropDownMenu value={this.state.name} onChange={this.handleChange}>
{this.renderOptions()}
</DropDownMenu>
</div>
);
}
}
ありがとうございます。
よろしくお願いいたします。
こんにちは、あなたの時間に感謝ページをレンダリングするとき、私はこれは「選択については、このソリューションが、ドロップダウンがまだ空白を試してみました: findResponse.results [0] .name.first "findResponseからコンソールに結果を出力しているので、それが存在すると確信しています。私はWSから呼び出す4つの要素を見ることができます。 – kennechu
Hmm ..更新されたコードは表示できますか? – godsenal
完了、私は質問を更新し、更新されたコードを追加します。もう一度ありがとう – kennechu