Vue2.0 ES6语法降级ES5的操作


Posted in Javascript onOctober 30, 2020

由于部分低版本的手机还不支持ES6语法,将会导致vue报错。综合了网上的各种办法,我的项目现在终于成功降级ES5.

首先安装插件

npm install -D babel-preset-es2015 babel-core babel-preset-stage-2 babel-loader

编辑配置文件

编辑/build/webpack.base.conf.js

编辑entry节点,变成如下

entry: {
  app: ['babel-polyfill', './src/main.js']
}

替换module.rules数组中的

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

{
    test: /\.js$/,
    exclude: /node_modules/, // 处理除了nodde_modules里的js文件
    loader: 'babel-loader'
}

再根目录新建.babelrc内容为

{
 "presets": [
  "es2015",
  "stage-2"
 ],
 "plugins": [

 ]
}

如果使用了URLSearchParams,需要安装npm install url-search-params-polyfill --save,然后在使用了该对象的类头部引入import 'url-search-params-polyfill'

最后npm run build 编译。

验证是否成功

查看dist目录下编译出来的js里面是否还有const/let等ES6的语法,没有的话基本就成功了。

补充知识:vue-cli3.x 组件es6 转es5 失败 导致低版本浏览器报错

错误为 Uncaught SyntaxError: Unexpected token ...

这个问题网上看了很多解决方式 都没发实现这个组件转化成ES5

这个坑爹的组件就是 vue-superslide

来看一下他入口文件的内容

// 导入组件
import superslide from './superslide'
// import superSlide from "./slide";
// import SuperSlideItem from "./slide-item";
 
// 存储组件列表
const components = [superslide]
 
// 定义 install 方法,接收 Vue 作为参数。如果使用 use 注册插件,则所有的组件都将被注册
const install = function(Vue) {
 // 判断是否安装
 if (install.installed) return
 // 遍历注册全局组件
 components.map(component => Vue.component(component.name, component))
}
 
// 判断是否是直接引入文件
if (typeof window !== 'undefined' && window.Vue) {
 install(window.Vue)
}
 
export default {
 // 导出的对象必须具有 install,才能被 Vue.use() 方法安装
 install,
 // 以下是具体的组件列表
 ...components
}

真的是有es6语法 悲伤 整个项目只有这个组件没有转义成ES5 不明所以 还是要解决啊 我并没有放弃它

解决方式 去node_modules文件夹下面找到,把它当一个静态资源引入直接放在assets目录下

原来插件的引入方式是

import VueSuperSlide from 'vue-superslide'

Vue.use(VueSuperSlide)

现在的引入方式是

import VueSuperSlide from './assets/js/vue-superslide/packages/index.js'

Vue.use(VueSuperSlide)

这简直的 LOW 到不行 但解决问题了 我忍一忍。

以上这篇Vue2.0 ES6语法降级ES5的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 图片随机不定向浮动的实现代码
Jul 02 Javascript
jquery中animate的stop()方法作用实例分析
Jan 30 Javascript
使用javaScript动态加载Js文件和Css文件
Oct 24 Javascript
详解JavaScript的回调函数
Nov 20 Javascript
jQuery实现对无序列表的排序功能(附demo源码下载)
Jun 25 Javascript
AngularJs Forms详解及简单示例
Sep 01 Javascript
jQuery插入节点和移动节点用法示例(insertAfter、insertBefore方法)
Sep 08 Javascript
angularJS Provider、factory、service详解及实例代码
Sep 21 Javascript
Javascript使用uploadify来实现多文件上传
Nov 16 Javascript
JavaScript插入排序算法原理与实现方法示例
Aug 06 Javascript
node.js微信小程序配置消息推送的实现
Feb 13 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
Aug 07 Javascript
Vue自定义表单内容检查rules实例
Oct 30 #Javascript
探索node之事件循环的实现
Oct 30 #Javascript
使用TS来编写express服务器的方法步骤
Oct 29 #Javascript
微信小程序将页面按钮悬浮固定在底部的实现代码
Oct 29 #Javascript
vue3.0搭配.net core实现文件上传组件
Oct 29 #Javascript
使用jQuery实现购物车
Oct 29 #jQuery
ant design中upload组件上传大文件,显示进度条进度的实例
Oct 29 #Javascript
You might like
php设计模式 DAO(数据访问对象模式)
2011/06/26 PHP
php采用curl访问域名返回405 method not allowed提示的解决方法
2014/06/26 PHP
PHP下SSL加密解密、验证、签名方法(很简单)
2020/06/28 PHP
PHP实现的redis主从数据库状态检测功能示例
2017/07/20 PHP
在thinkphp5.0路径中实现去除index.php的方式
2019/10/16 PHP
javascript 在网页中的运用(asp.net)
2009/11/23 Javascript
加载远程图片时,经常因为缓存而得不到更新的解决方法(分享)
2013/06/26 Javascript
解决jquery版本冲突的有效方法
2014/09/02 Javascript
js中split和replace的用法实例
2015/02/28 Javascript
Bootstrap 附加导航(Affix)插件实例详解
2016/06/01 Javascript
jQuery实用小技巧_输入框文字获取和失去焦点的简单实例
2016/08/25 Javascript
通过jquery的ajax请求本地的json文件方法
2018/08/08 jQuery
微信jssdk逻辑在vue中的运用详解
2018/11/14 Javascript
JS Html转义和反转义(html编码和解码)的实现与使用方法总结
2020/03/10 Javascript
Nuxt的动态路由和参数校验操作
2020/11/09 Javascript
python实现在sqlite动态创建表的方法
2015/05/08 Python
使用Python & Flask 实现RESTful Web API的实例
2017/09/19 Python
MAC中PyCharm设置python3解释器
2017/12/15 Python
python正则表达式之对号入座篇
2018/07/24 Python
Python3搭建http服务器的实现代码
2020/02/11 Python
Python sqlite3查询操作过程解析
2020/02/20 Python
python 计算概率密度、累计分布、逆函数的例子
2020/02/25 Python
解决Python图形界面中设置尺寸的问题
2020/03/05 Python
python shapely.geometry.polygon任意两个四边形的IOU计算实例
2020/04/12 Python
CSS3中的@keyframes关键帧动画的选择器绑定
2016/06/13 HTML / CSS
css3编写浏览器背景渐变背景色的方法
2018/03/05 HTML / CSS
中国旅游网站:同程旅游
2016/09/11 全球购物
俄罗斯珠宝市场的领导者之一:Бронницкий ювелир
2019/10/02 全球购物
使用索引有什么好处
2016/07/27 面试题
初中三年学生的学习自我评价
2013/11/13 职场文书
留学生如何写好自荐信
2013/12/27 职场文书
留学推荐信写作指南
2014/01/25 职场文书
运动会解说词100字
2014/01/31 职场文书
关于学习的演讲稿
2014/05/10 职场文书
在校证明模板
2015/06/17 职场文书
深入浅析python3 依赖倒置原则(示例代码)
2021/07/09 Python