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 相关文章推荐
两个JavaScript jsFiddle JSBin在线调试器
Mar 14 Javascript
jQuery 学习入门篇附实例代码
Mar 16 Javascript
js截取中英文字符串、标点符号无乱码示例解读
Apr 17 Javascript
Jquery 实现grid绑定模板
Jan 28 Javascript
防止重复发送 Ajax 请求
Feb 15 Javascript
js 输入框 正则表达式(菜鸟必看教程)
Feb 19 Javascript
vue中如何实现变量和字符串拼接
Jun 19 Javascript
Node接收电子邮件的实例代码
Jul 21 Javascript
jQuery获取复选框选中的当前行的某个字段的值
Sep 15 jQuery
详解React中传入组件的props改变时更新组件的几种实现方法
Sep 13 Javascript
vue将后台数据时间戳转换成日期格式
Jul 31 Javascript
vue实现购物车案例
May 30 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 模板高级篇总结
2006/12/21 PHP
PHP判断是否有Get参数的方法
2014/05/05 PHP
php过滤html标记属性类用法实例
2014/09/23 PHP
php生成excel列名超过26列大于Z时的解决方法
2014/12/29 PHP
php创建session的方法实例详解
2015/01/27 PHP
PHP中配置IIS7实现基本身份验证的方法
2015/09/24 PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
2016/12/29 PHP
PHPMAILER实现PHP发邮件功能
2018/04/18 PHP
jQuery 页面载入进度条实现代码
2009/02/08 Javascript
javascript 表格排序和表头浮动效果(扩展SortTable)
2009/04/07 Javascript
JS控制输入框内字符串长度
2014/05/21 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
2014/06/30 Javascript
详解JavaScript中Date.UTC()方法的使用
2015/06/12 Javascript
基于jQuery实现仿QQ空间送礼物功能代码
2016/05/24 Javascript
浅析jQuery中使用$所引发的问题
2016/05/29 Javascript
jquery常用的12个小功能
2016/07/22 Javascript
JS实现简单的二元方程计算器功能示例
2017/01/03 Javascript
微信小程序实战之仿android fragment可滑动底部导航栏(4)
2020/04/16 Javascript
基于js的变量提升和函数提升(详解)
2017/09/17 Javascript
H5实现仿flash效果的实现代码
2017/09/29 Javascript
vue使用Google地图的实现示例代码
2018/12/19 Javascript
12个提高JavaScript技能的概念(小结)
2019/05/09 Javascript
vue 实现websocket发送消息并实时接收消息
2019/12/09 Javascript
[56:42]完美世界DOTA2联赛循环赛 Matador vs Forest 第二场 11.06
2020/11/06 DOTA
Python使用py2exe打包程序介绍
2014/11/20 Python
Python实现接受任意个数参数的函数方法
2018/04/21 Python
PyTorch基本数据类型(一)
2019/05/22 Python
python递归法解决棋盘分割问题
2019/07/17 Python
ManoMano英国:欧洲第一家专注于DIY和园艺市场的电商平台
2020/03/12 全球购物
请假条范文大全
2014/04/10 职场文书
关于九一八事变的演讲稿2014
2014/09/17 职场文书
检讨书1000字
2014/10/11 职场文书
医药公司采购员岗位职责
2015/04/03 职场文书
2015年车间主任工作总结
2015/05/21 职场文书
python套接字socket通信
2022/04/01 Python
Win11控制面板快捷键是什么?Win11打开控制面板的方法汇总
2022/07/07 数码科技