Es6 写的文件import 起来解决方案详解


Posted in Javascript onDecember 13, 2016

这段时间,学习了一点关于es6新规范的知识,然后心血来潮,想尝试一下用ES6编写的代码在浏览器中跑起来。

说干就干,先说下我的实现步骤(没想到有坑!)

  1. 把ES6代码转译成ES5;
  2. html文件引入转译后的ES5;
  3. 然后在浏览器环境中运行;
  4. 在node环境中运行;

然后下面是我的一些目录结构,大致预览一下。

src,es6开发目录

Es6 写的文件import 起来解决方案详解

dist,es5生产目录

Es6 写的文件import 起来解决方案详解

test,一个测试目录

Es6 写的文件import 起来解决方案详解

 然后,看一下我的ES6开发的一些js是什么样子。

file  Es6 写的文件import 起来解决方案详解      file2  Es6 写的文件import 起来解决方案详解    app  Es6 写的文件import 起来解决方案详解

test  Es6 写的文件import 起来解决方案详解

然后我们在html中引入dist中的经过转译的文件

Es6 写的文件import 起来解决方案详解

在浏览器中测试,test中因为没引入模块,所以正常执行,app中因为引入了模块,而且是CommonJS规范,但是浏览器不支持这种规范,因此报错

Es6 写的文件import 起来解决方案详解

假如,我们为了测验,就给html加上requireJS文件,浏览器支持AMD/CMD规范。异步加载定义。

但是,我们发现,还是会报错,说明语法不支持,或者两者冲突了,因为一种是AMD,一种是CommonJS。

Es6 写的文件import 起来解决方案详解 

由于我们通过node来编译ES6成ES5,node模块就是参照CommonJS规范来的,所以ES5的语法,也属于CommonJS规范,而且现在的浏览器和node都不支持ES6的规范或大部分不支持。

解决方法

   经过查阅资料,发现可以通过webpack打包工具来将依赖合并成一个文件,然后引入html中。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
用js实现计算代码行数的简单方法附代码
Aug 13 Javascript
JS中getYear()和getFullYear()区别分析
Jul 04 Javascript
Highcharts使用简例及异步动态读取数据
Dec 30 Javascript
JS实现图片平面旋转的方法
Mar 01 Javascript
原生JS和jQuery版实现文件上传功能
Apr 18 Javascript
简单理解vue中Props属性
Oct 27 Javascript
JS中使用 after 伪类清除浮动实例
Mar 01 Javascript
vue教程之toast弹框全局调用示例详解
Aug 24 Javascript
es6数值的扩展方法
Mar 11 Javascript
优雅的处理vue项目异常实战记录
Jun 05 Javascript
vue-openlayers实现地图坐标弹框效果
Sep 24 Javascript
Vue如何清空对象
Mar 03 Vue.js
JS实现图片垂直居中显示小结
Dec 13 #Javascript
Javascript this 函数深入详解
Dec 13 #Javascript
JS实现动画兼容性的transition和transform实例分析
Dec 13 #Javascript
简单实现js浮动框
Dec 13 #Javascript
javascript中this关键字详解
Dec 12 #Javascript
深入理解javascript函数参数与闭包
Dec 12 #Javascript
smartupload实现文件上传时获取表单数据(推荐)
Dec 12 #Javascript
You might like
全国中波电台频率表
2020/03/11 无线电
Zend的AutoLoad机制介绍
2012/09/27 PHP
php 类中的常量、静态属性、非静态属性的区别
2017/04/09 PHP
php和html的区别点详细总结
2019/09/24 PHP
Nigma vs Alliance BO5 第五场2.14
2021/03/10 DOTA
Javascript 错误处理的几种方法
2009/06/13 Javascript
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
javascript:void(0)的作用示例介绍
2013/10/28 Javascript
js中hash和ico的关联分析
2015/02/05 Javascript
javascript实现图片循环渐显播放的方法
2015/02/24 Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
2015/08/04 Javascript
js生成随机数的方法实例
2015/10/16 Javascript
Javascript 实现计算器时间功能详解及实例(二)
2017/01/08 Javascript
Angualrjs 表单验证的两种方式(失去焦点验证和点击提交验证)
2017/05/09 Javascript
[03:38]TI4西雅图DOTA2前线报道 71专访
2014/07/08 DOTA
[01:14:31]Secret vs VG 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
Python 的 Socket 编程
2015/03/24 Python
python抽象基类用法实例分析
2015/06/04 Python
Python 基于Twisted框架的文件夹网络传输源码
2016/08/28 Python
详解python3实现的web端json通信协议
2016/12/29 Python
使用python实现ANN
2017/12/20 Python
Python中装饰器学习总结
2018/02/10 Python
python3下使用cv2.imwrite存储带有中文路径图片的方法
2018/05/10 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
python实现信号时域统计特征提取代码
2020/02/26 Python
Django多数据库配置及逆向生成model教程
2020/03/28 Python
一篇文章搞懂python的转义字符及用法
2020/09/03 Python
关键字throw与throws的用法差异
2016/11/22 面试题
干部个人对照检查材料
2014/08/25 职场文书
支部书记四风对照材料
2014/08/28 职场文书
作风转变心得体会
2014/09/02 职场文书
有关保护环境的宣传标语100条
2019/08/07 职场文书
创业计划书之网吧
2019/10/10 职场文书
Promise面试题详解之控制并发
2021/05/14 面试题
Vue+TypeScript中处理computed方式
2022/04/02 Vue.js
python 判断字符串当中是否包含字符(str.contain)
2022/06/01 Python