条件に基づいてオブジェクトのプロパティを変更しています。私はreactを使用していますオブジェクトを考えてみましょう:
obj = {a: 4, b: 6, ...}
ここでobj.a
、フラグがtrueかどうかを変更して、次のようなことを実行できるようにします。
setState({...obj, a: flag === true ? 6 : obj.a})
それを行う他の方法はありますか、ネストされたオブジェクトでは厄介に見えるので、上記のような三項演算子を使用したくありません。
また、オブジェクトをコピーして以下のように変更したくありません。
const obj_copy = {...obj}
if(flag) obj_copy = 4;
setState({...obj_copy))
最近、私?.
は本当に役立つものに出くわしました。
// we can change this
obj && obj.a === 'text' ? ... : ...
// into
obj?.a === 'text' ? ... : ...
私は上記のようなものを探しています...知識の目的のためだけにこれを行う方法はありますか?
チェックと拡散用のオブジェクトを使用して論理ANDを作成できます。
let obj = { a: 4, b: 6 },
flag = true;
console.log({ ...obj, ...flag === true && { a: 6 } });
flag = false;
console.log({ ...obj, ...flag === true && { a: 6 } });
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加