反応入力のdefaultValueが状態で更新されない
reactを使用して単純なフォームを作成しようとしていますが、データをフォームのdefaultValueに適切にバインドすることが困難になっています。 私が探している行動はこれです: ページを開くと、テキスト入力フィールドにデータベースのAwayMessageのテキストが入力されているはずです。それが「サンプルテキスト」です データベースのAwayMessageにテキストがない場合は、テキスト入力フィールドにプレースホルダーを配置するのが理想的です。 ただし、現在、ページを更新するたびに[テキスト]入力フィールドが空白になっています。(入力に入力した内容は適切に保存され、保持されます。)これは、AwayMessageが空のオブジェクトである場合に入力テキストフィールドのhtmlが読み込まれますが、awayMessageが読み込まれたときに更新されないためです。また、フィールドのデフォルト値を指定できません。 わかりやすくするために一部のコードを削除しました(つまり、onToggleChange) window.Pages ||= {} Pages.AwayMessages = React.createClass getInitialState: -> App.API.fetchAwayMessage (data) => @setState awayMessage:data.away_message {awayMessage: {}} onTextChange: (event) -> console.log "VALUE", event.target.value onSubmit: (e) -> window.a = @ e.preventDefault() awayMessage = {} awayMessage["master_toggle"]=@refs["master_toggle"].getDOMNode().checked console.log "value of text", @refs["text"].getDOMNode().value awayMessage["text"]=@refs["text"].getDOMNode().value @awayMessage(awayMessage) awayMessage: (awayMessage)-> console.log "I'm saving", …