問題タブ [react-state-management]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - 動的に追加されたテーブル行を削除する - 反応js
テーブル行をテーブルに動的に追加しています。UI での表示は次のとおりです。
新しい行を作成するために使用しているロジックは次のとおりです。
状態変数がありますthis.state = ({rows: []})
「挿入」ボタンをクリックして、私はやっています:
私render()
は以下のコードを持っています:
そして、明らかに、私の最終的なテーブル コードは次のようになります。
これが私のremoveRow
機能です:
コード全体が機能します。変数名を変更し、それらから不要なコードを削除しましたが、これは私がどのように設計したかを示すためのものです。
私の問題は、「削除」ボタンをクリックすると、クリックしたアイテム行ではなく、行の最後のアイテムが常に削除されることです。これを修正する方法は?
私は同じことについてグーグルで検索しましたが、いくつかの例が見つかりました.
この問題を解決するために何をする必要があるかアドバイスしてください。
reactjs - プロパティが AJAX リクエストに間に合わない
私はいくつかの同様の質問をチェックアウトし、それらの回答を実装しようとしましたが、まだうまくいきません. コードは次のとおりです。
currentUser は、親コンポーネントから props として渡され、ファイル参照の配列 (this.props.currentUser.file_refs) を含みます。console.log
内部では componentDidMount()
、すべてのファイル参照がコンソールに正確に記録されます。ただし、getFileData()
関数を実行すると、次のエラーが返されますTypeError: Cannot read property 'length' of undefined
。
私がすでに試したこと: - に変更componentWillMount()
-関数if (this.props.currentUser){this.getFileData())
に追加 - 追加componentDidMount()
if (!this.props.currentUser.file_refs) { return null ) return ( <Fragment> ..... </Fragment>
ここで私が間違っていることを知っている人はいますか?
編集:親コンポーネントからのルートの追加、Main.js