麻烦透明化startsWith()使用Babel和Rollup

问题描述 投票:3回答:1

我使用Rollup和Babel来发现ES2015的startsWith时遇到了意想不到的麻烦。我正在使用babel-preset-env并在我的.babelrc中有以下内容:

{
   "presets": [
     ["env", {
       "targets": {
         "browsers": ["last 2 versions", "not ie >= 10"]
       }, 
       "debug": true
     }]
   ]
 }

我的rollup.config.js设置为尊重我的.babelrc,我看到它在我的调试信息中正确输出它尊重我的浏览器目标。尽管如此,在我的捆绑式JS中,我看到startsWith未受影响,在任何地方都看不到填充物。

我可能做错了什么?

javascript ecmascript-6 babel rollup
1个回答
2
投票

Babel只会转换语法(如let / const,箭头函数,类等),而不是API方法(如.startsWith().includes())。

为此,你需要一个polyfill,如babel-polyfill。但是,如果您只需要.startsWith函数,a simpler polyfill will suffice。那,或者你可以简单地制作自己的startsWith()功能并使用它。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.