繁体   English   中英

散布时在立即创建的对象上分配对象

[英]Object assign on immediately created object when spread

我有点厌倦了这样传递反应道具

<Comp one={one} two={two} three={three} />

所以我开始做

<Comp {...{one, two, three}} />

但是我意识到这可以计算为对象关联

react.createElement(Comp , Object.assign({
    one: one,
    two: two
  }, {
    __source: {
      fileName: _jsxFileName,
      lineNumber: 95
    },

由于我正在散布一个我刚刚创建的对象,所以我希望编译器/编译器足够聪明,可以意识到这一点,并执行类似的操作

react.createElement(Comp ,{
    one: one,
    two: two,
    __source: {
      fileName: _jsxFileName,
      lineNumber: 95
    },

是否有任何Babel插件可以完成此任务,或以这种方式进行编译的任何方式?

问候

您使用的Babel版本和设置非常重要。

使用最新的代码,我得到了以下代码:

return (<Child {...{ name: this.name }} />);

变成了这样:

return Object(m.a)(t, e), Object(c.a)(t, [{
    key: "render",
    value: function() {
        return o.a.createElement(k, {
            name: this.name
        })
    }
}])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM