我在使用 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
未被触及,在任何地方都看不到 polyfill。
我可能做错了什么?
最佳答案
Babel 仅转译语法(如 let
/const
、箭头函数、类等)而不转译 API 方法(如 .startsWith()
或 .includes()
)。
为此,您需要一个 polyfill,例如 babel-polyfill .但是,如果您只需要 .startsWith 函数,a simpler polyfill will suffice .那,或者您可以简单地创建自己的 startsWith()
函数并使用它。
关于javascript - 使用 Babel 和 Rollup 转译 startsWith() 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49088881/