析構(gòu)賦值讓我們從 Object 或 Array 里取部分數(shù)據(jù)存為變量。
// 對象
const user = { name: 'guanguan', age: 2 };
const { name, age } = user;
console.log(`${name} : ${age}`); // guanguan : 2
// 數(shù)組
const arr = [1, 2];
const [foo, bar] = arr;
console.log(foo); // 1我們也可以析構(gòu)傳入的函數(shù)參數(shù)。
const add = (state, { payload }) => { return state.concat(payload);
};析構(gòu)時還可以配 alias,讓代碼更具有語義。
const add = (state, { payload: todo }) => { return state.concat(todo);
};對象字面量改進
const name = 'duoduo';
const age = 8;
const user = { name, age };
// { name: 'duoduo', age: 8 }定義對象方法時,還可以省去 function 關(guān)鍵字。
app.model({
reducers: {
add() {} // 等同于 add: function() {}
},
effects: {
*addRemote() {} // 等同于 addRemote: function*() {}
},
});