首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Monkey React组件

Monkey React组件
EN

Stack Overflow用户
提问于 2016-08-22 01:35:33
回答 1查看 2.1K关注 0票数 5

假设我定义了一个这样的组件:

代码语言:javascript
复制
const myComponent = class MyComponent extends React.Component {}

稍后,我想向已定义的组件添加一个构造函数,如下所示:

代码语言:javascript
复制
myComponent.constructor = function(props) {
  super(props)
  this.state = { hello: 'world' }
}

有没有人知道这是否可能?如果是这样的话,有没有人知道与上述相比,在实现上需要有什么不同?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-01-24 16:13:12

不能重写es6类的构造函数。你可以用es5类来做这件事,所以它可以用babel来工作(而且很脆弱)。

对于其他方法,您可以这样做

代码语言:javascript
复制
MyComponent.prototype.methodName = function() {}

这是一个缺少的特性,因为它将允许更好的依赖注入。

如果TC39偶然发现了这个页面,我希望有Reflect.setConstructor。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39067004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档