正確にこれらの3つのドットはどういう意味ですか、なぜ私はそれらが必要ですか
export function leadReducer(state: Lead[]= [], action: Action {
switch(action.type){
case ADD_LEAD:
return [...state, action.payload];
case REMOVE_LEAD:
return state.filter(lead => lead.id !== action.payload.id )
}
}
3つのドットは、Typescriptから(ES7からも)スプレッド演算子として知られています。
スプレッド演算子は、配列のすべての要素を返します。あなたが各要素を別々に書くように:
let myArr = [1, 2, 3];
return [1, 2, 3];
//is the same as:
return [...myArr];
これはこれをコンパイルするので、ほとんどが単なる構文上の砂糖です:
func(...args);
これに:
func.apply(null, args);
あなたの場合、これはこれにコンパイルされます:
return [...state, action.payload];
//gets compiled to this:
return state.concat([action.payload]);
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加