create-react-app 使用Babel的"假设"

lb3vh1jj  于 3个月前  发布在  React
关注(0)|答案(1)|浏览(37)

你的提案是否与问题相关?

我不得不在我的项目中添加全局 loose: true,因为其中一个提案 react needs 和 CRA sets(以及现在)有 loose: true,而 babel 对 2020-05-27 左右的不匹配的 loose 设置感到不满。
从那时起,babel 已经发展了,最近 loose: true 在数组方面变得更加宽松:babel/babel#12935

描述你希望的解决方案

与此同时,assumptions 最近被添加到 babel 中,这比布尔值 loose 提供了更精细的控制。
规格:https://github.com/babel/rfcs/blob/master/rfcs/0003-top-level-assumptions.md
也许可以通过假设而不是在特定的转换上设置 loose 来配置使用 react 的代码,这样就可以避免出现问题?
之前的讨论:#4263

你考虑过的替代方案

现状让我陷入困境,而且看起来并不好看:

  • 全局 loose: true 破坏了一些数组的使用
  • 全局 loose: false 可以工作,但会产生大量的 babel 警告

[可能还有其他替代方案,我不是Maven;我希望 react 和 babel 的人们能够互相沟通🙏🏿]

hzbexzde

hzbexzde1#

Babel对2020-05-27左右的不匹配松散设置感到不满。
具体来说,Babel要求所有新的类特性插件的松散选项必须相同。
由于仅仅切换到假设会破坏使用Babel < 7.13的人,另一个可能性是在CRA的预设中提供一个选项来选择退出松散模式。

相关问题