1
私はreact-geosuggest
を使用していますが、何らかの理由で入力フィールドGeosuggest
の値が収集されません。 Geosuggest
入力フィールドには、入力フィールドにname=
が含まれています。他の入力フィールドと同じように、値は常に空に戻ります。助言がありますか。反応geosuggest入力フィールドの入力値を取得
export default class ContactDetails extends React.Component {
constructor(props) {
super(props);
this.state = {
'name.first': '',
'address.fullAddress': '',
};
this.handleInputChange = this.handleInputChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleInputChange(event) {
const target = event.target;
const value = target.type === 'checkbox' ? target.checked : target.value;
const name = target.name;
this.setState({
[name]: value
});
}
handleSubmit(event) {
event.preventDefault();
var data = {
'name.first': this.state['name.first'],
'address.fullAddress': this.state['address.fullAddress'],
};
console.log("data: ", data);
}
render() {
return (
<form onSubmit={this.handleSubmit} noValidate>
<Geosuggest
name="address.fullAddress"
placeholder="Full address"
value={this.state['address.fullAddress']}
onChange={this.handleInputChange}
initialValue={this.state['address.fullAddress']}
location={new google.maps.LatLng(25.2744, 133.7751)}
radius="0"
/>
<input
name="name.first"
type="text"
value={this.state['name.first']}
onChange={this.handleInputChange}
className={this.state.errors['name.first'] ? "validate invalid" : "validate" }
/>
<button className="btn waves-effect waves-light" type="submit" name="action">
Save
</button>
</form>
)
}
}
を[OK]を、今私は、しかし、で入力された値を取得していますしたがって、私はあなたがこのようなことのために別のハンドラを作成お勧めします選択されていない。同様に、 '100 Sample Street'を探して' 100 S 'と入力し、Googleの提案である '100 Sample Street'を選択すると、記録される値は' 100 S'になります。ありがとう。 – bp123
ありがとう。解決策は次のようなものでした: 'onSuggestSelect(suggest){ console.log(" suggest: "、suggest); // eslint-disable-line this.setState({'address.fullAddress':suggest.label}) } ' – bp123