【发布时间】:2019-11-25 20:20:27
【问题描述】:
我想将多个对象属性设置为相同的值。
const SHOW_PAYMENT_DIALOG = 'SHOW_PAYMENT_DIALOG';
const SHOW_BUSINESS_DIALOG = 'SHOW_BUSINESS_DIALOG';
const handler = (state, payload) => {
return {
...state,
data: payload
};
};
const object = {
[SHOW_BUSINESS_DIALOG]: handler,
[SHOW_PAYMENT_DIALOG]: handler,
};
如上例,我必须手动为 2 个属性 SHOW_BUSINESS_DIALOG 和 SHOW_PAYMENT_DIALOG 分配处理程序
有没有办法通过js api快速即时设置,但不需要引入新函数来处理类似
const object = {
[SHOW_BUSINESS_DIALOG, SHOW_PAYMENT_DIALOG]: handler,
};
【问题讨论】:
-
你为什么不使用它的方法然后比较参数以返回你需要的函数。
-
@BobWhite,抱歉我没明白你的意思:-?
-
已经有人回答了你的问题。这就是我的意思。
-
除了旧的
obj.a = obj.b = value之外,还没有同时为多个键赋值的快捷方式。你所拥有的是最易读、最简洁的。
标签: javascript object ecmascript-6 ecmascript-2016