老师,你好,请问你知道@vue/app是什么来的吗?
来源:1-1 导学
慕用4150088
2019-11-11
不好意思老师,其实我已经学完了这门课程。今天遇到了一个关于vue的问题,百度了一下没找到答案,想看看老师你是否知道。
// babel.config.js
module.exports = {
'presets': [
'@vue/app'
],
'plugins': [
[
'component',
{
'libraryName': 'element-ui',
'styleLibraryName': 'theme-chalk'
}
]
]
}
想请问一下老师,你知道vue中,babel.config.js里presets:[ ‘@vue/app’]是什么来的吗?我认为项目为了兼容性,需要引入@babel/polyfill,我一个同事说不需要,说可能@vue/app已经引入了polyfill,他的说法是对的吗?
npm install --save @babel/polyfill
// main.js
import "@babel/polyfill";
1回答
-
ustbhuangyi
2019-11-12
应该对应的是这个 https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/babel-preset-app
它内置了 babel 的一些插件,比如 @babel/plugin-transform-runtime、@babel/plugin-syntax-jsx 等。
通过下面这个链接https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/babel-preset-app/index.js#L3-L14
我们可以看到它会内置了一些 polyfill,然后它内部实现最终会依赖 core-js 或者是 regenerator-runtime 下面定义的 polyfill。
https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/babel-preset-app/polyfillsPlugin.js#L1-L15
至于 @babel/polyfill 在 Babel 7.4.0 已经被废弃了,参考 https://babeljs.io/docs/en/babel-polyfill/10
相似问题