「'既存のユーザー' のプロパティ 'name' は定義されていないため、構造化できません。Update.js:13」とはどういう意味ですか?
P粉925239921
P粉925239921 2024-01-01 16:44:54
0
1
460

ユーザーデータを更新したいです。既存のユーザー データは正常に取得されましたが、更新されませんでした。上記のエラーが表示されます。 以下の行から等号を削除すると、エラーは削除されますが、ユーザー データはまだ更新されません。

const presentUser = users.userList.filter(f => f.id == id);

リーリー


P粉925239921
P粉925239921

全員に返信(1)
P粉979586159

データ構造が何であるかはわかりませんが、提供されたコードから説明し、問題が何であるかを推測することができます。

受け取ったエラーは、existingUser の 0 番目の要素が存在しないことを意味します。 existingUser はフィルターから取得され、フィルターは配列を返すため、フィルター内の条件がどの要素でも満たされていないと想定できます。

===== に変更すると機能するということは、f.id と id が同じ型ではないことが推測できます。おそらく、一方は文字列で、もう一方は整数です。

== を使用すると、実際に元の問題が解決されます。ただし、=== を使用したい場合は、値のタイプを変更してみてください。たとえば、id が文字列で f.id が整数の場合、次のように条件を記述できます:

リーリー

Google 検索すると違いがわかります。

次の問題は、上記のエラーを修正した後、データが更新されないことです。これは、コンポーネントで使用しているデザイン パターンが原因です。 useState は初期値のみを取り、setState を使用して更新しない限り、コンポーネントの存続期間中は変更されません。

useSelector とdispatch を使用しているため、redux を使用していると思います。この場合、useState は必要ないと思います。 existingUser[0] から分解された nameemail を使用するだけで、これらは 更新コードを送信するたびに表示されます コード>。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!