解决Vue-cli无法编译es6的问题

(编辑:jimmy 日期: 2024/12/24 浏览:2)

最近使用vue-cli创建项目的时候,遇到es6无法转换成es5的情况,项目在ios9下无法正常运行,在webpack.base.conf.js里面修改babel的配置项,添加src目录也没用,于是百度,谷歌找方法,最后自己想了想是不是没有配置.babelrc文件,于是在项目根目录创建.babelrc文件,同时在文件中编写

 { 
 "presets": 
 [
 "env"
 ],
 
 "plugins": 
 [
 "transform-runtime"
 ] 
 }

于是es6语法成功编译成es5,开心。

补充知识:vue cli2、cli3编译(打包)后的chunk-vendors.js文件存在es6语法

刚踩过一个大坑,使用vue脚手架搭建的项目build后chunk-vendors.js文件一直存在es6语法,在即将崩溃的边缘想到了一个方法,完美解决,

以下是解决步骤:

1.vue打包是不会编译node_modules中的代码,如果代码中存在node_modules中的引用,build后就会直接合并代码,不会被babel解析。

2.那么根源找到了,你要先找到node_modules中哪个包或者代码没有被babel,然后在webpack.base.conf.js 的 babel-loader中把这个包加入include就可以被babel解析了。

代码如下:

module: {
 rules: [
  {
  test: /\.js$/,
  loader: "babel-loader",
  include: [
   resolve("src"),
   resolve("test"),
   resolve("node_modules/webpack-dev-server/client"),
   resolve("node_modules/webpack/lib/ModuleFilenameHelpers.js")
  ]
  },
 ]
}

vue-cli3可参考官网 webpack相关配置修改loader

以上这篇解决Vue-cli无法编译es6的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?