Localstorage オブジェクトの複数の状態を更新する方法 React
P粉696605833
P粉696605833 2023-09-14 11:49:00
0
1
540

つまり、状態を保持する localStorage フックはすでにありますが、今度はオブジェクト内の 2 つの項目を更新したいと考えています

これはアップデートを追加する機能です

リーリー

ログに記録されると、次のような jobExperience 配列が取得されます。jobExperience: (6) ['0', '1', '2', '3', '4', '5' , { …} ]1 つのオブジェクトのみを保存し、残りは数値に変換されます

アタッチされたジョブ オブジェクトから currentEditedJob: data.currentEditedJob 1, を削除すると、すべてが正常に動作し、ステータスが正常に更新され、オブジェクトとして保存されることに気付きました。 jobExperience: (6) [{…}、{…}、{…}、{…}、{…}、{…}、{…}]

解決策はありますか

ステータスを逐一更新してみましたが、うまくいきませんでした。

リーリー

しかし、currentEditedJob: data.currentEditedJob 1, を削除しない限り、同じエラーが発生します。

P粉696605833
P粉696605833

全員に返信(1)
P粉872182023

問題は、addWorkExperience 関数の currentEditedJob プロパティにあるようです。提供されたコードに基づくと、data.currentEditedJob は数値の文字列表現であるように見えます。これに 1 を加算すると、算術加算を実行するのではなく、数値が連結されます。

この問題を解決するには、data.currentEditedJob を数値に変換し、1 を加算します。 addWorkExperience 関数の更新バージョンは次のとおりです:

リーリー

parseInt() を使用して data.currentEditedJob を数値に変換すると、加算操作が正しく機能し、ステータスが期待どおりに更新されます。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート