[解決済み】状態配列から項目を削除する方法は?
2022-04-10 23:40:58
質問
話は変わって、ボブ、サリー、ジャックを箱に入れることができるはずです。また、どちらかを箱から取り出すことも可能です。取り外すと、スロットは残りません。
people = ["Bob", "Sally", "Jack"]
今度は、例えば "Bob "を削除する必要があります。新しい配列になる。
["Sally", "Jack"]
これが私のリアクトコンポーネントです。
...
getInitialState: function() {
return{
people: [],
}
},
selectPeople(e){
this.setState({people: this.state.people.concat([e.target.value])})
},
removePeople(e){
var array = this.state.people;
var index = array.indexOf(e.target.value); // Let's say it's Bob.
delete array[index];
},
...
ここでは、より多くのコード(onClickなど)があるため、最小限のコードを紹介します。重要なのは、配列から "Bob "を削除、除去、破棄することですが
removePeople()
が呼び出されても動作しない。何かアイデアはありますか?でした。
ごらんなさい
が、Reactを使っているので、何か間違っているかもしれません。
どのように解決するのですか?
配列から要素を取り除くには、次のようにすればよい。
array.splice(index, 1);
あなたの場合
removePeople(e) {
var array = [...this.state.people]; // make a separate copy of the array
var index = array.indexOf(e.target.value)
if (index !== -1) {
array.splice(index, 1);
this.setState({people: array});
}
},
関連
-
[解決済み】未定義のプロパティ 'forEach' を読み取ることができない
-
[解決済み】Javascript、[オブジェクトHTMLInputElement]を表示中。]
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 配列からArrayListを作成する
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] オブジェクトが配列であるかどうかを確認するにはどうすればよいですか?[重複]。
-
[解決済み】別のウェブページにリダイレクトするにはどうすればいいですか?
-
[解決済み】配列に何かを追加する方法は?
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 Uncaught TypeError: data.push is not a function
-
[解決済み】Uncaught TypeError: nullのプロパティ'value'を読み取ることができない
-
[解決済み] Uncaught Invariant Violation: 前のレンダリング中よりも多くのフックをレンダリングした
-
[解決済み】XMLHttpRequestモジュールが定義されていない/見つからない
-
[解決済み] React with ES7: Uncaught TypeError: Cannot read property 'state' of undefined [duplicate] (未定義のプロパティ'state'を読み込むことはできません。
-
[解決済み】エラー:リスン EACCES 0.0.0.0:80 OSx Node.js
-
[解決済み】エラー:リクエストのエンティティが大きすぎる
-
[解決済み】React-Routerの子が1つしかない。
-
[解決済み】TypeError: res.status は関数ではありません。
-
[解決済み】Vueが定義されていない