[英]How do I understand this default statement in the Redux shopping cart example?
聲明如下:
default:
const { productId } = action
if (productId) {
return {
...state,
[productId]: products(state[productId], action)
}
}
return state
來源: https : //codesandbox.io/s/github/reactjs/redux/tree/master/examples/shopping-cart (src / reducers / products /-第26行)
到目前為止,這是我的理解:
第26行:如果不滿足大小寫RECIEVE_PRODUCTS,請執行雙點之后的內容。
第27行:const productId設置為等於addToCart操作繼承的action.productId。
第28行:如果存在action.productId,請在大括號之間執行該語句。
第29和30行:返回狀態的不變屬性。
第31行:?
第32-34行:否則,返回狀態不變。
[productId]: products(state[productId], action)
被分配的結果products(state[productId], action)
與值的鍵productId
。 用一個例子更容易解釋:
const a = 'foo'; const b = 'bar'; const obj = { [a]: a, b: b } console.log(obj);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.