使用MobX可观察的装饰器和create-react-app
该MobX文档告诉我,我必须“使用变换插件变换装饰遗留并确保它是第一个在插件列表”,为了使装饰工作。MobX样板项目建议我需要一个.babelrc
类似的东西:
{ "presets": [
"react",
"es2015",
"stage-1"
],
"plugins": ["transform-decorators-legacy", "react-hot-loader/babel"]
}
如何使用create-react-app生成的项目来做到这一点?任何尝试使用@
装饰器的错误。.babelrc
项目“退出”后甚至没有。
回答:
除非您不能使用装饰器语法eject
。但是,您可以不使用MobX,@
因为它只是一个语法糖。
丹·阿布拉莫夫阐明了这一原因
我们的立场很简单:我们添加足够稳定的转换(例如异步/等待)或Facebook大量使用的转换(例如类属性)。只有这样,我们才能自信地提出建议,因为如果标准有所更改,我们将编写并发布一个codemod以便从它们那里迁移。
由于我们目前不使用装饰器,因此如果标准不兼容,我们也不会自己提供迁移路径。另外,装饰器甚至没有得到Babel的正式支持(存在传统是有原因的)。当他们的配置略有错误时,人们会归咎于React。
您可能还想研究一下 create-react-app-mobx
相关讨论:
- https://github.com/facebookincubator/create-react-app/issues/214
- https://github.com/mobxjs/mobx/issues/521
- https://github.com/facebookincubator/create-react-app/issues/411
以上是 使用MobX可观察的装饰器和create-react-app 的全部内容, 来源链接: utcz.com/qa/399753.html