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判断文件类型和文件大小即限制上传大小
Nov 20 Javascript
jQuery响应enter键的实现思路
Apr 18 Javascript
javascript设计模式之解释器模式详解
Jun 05 Javascript
Highcharts使用简例及异步动态读取数据
Dec 30 Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
Mar 16 Javascript
用jQuery向div中添加Html文本内容的简单实现
Jul 13 Javascript
BootStrap无限级分类(无限极分类封装版)
Aug 26 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
Dec 05 Javascript
jquery.flot.js简单绘制折线图用法示例
Mar 13 Javascript
Node.js环境下Koa2添加travis ci持续集成工具的方法
Jun 19 Javascript
javascript  数组排序与对象排序的实例
Jul 17 Javascript
Vue通过WebSocket建立长连接的实现代码
Nov 05 Javascript
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
PHP 截取字符串专题集合
2010/08/19 PHP
PHP企业级应用之常见缓存技术篇
2011/01/27 PHP
php 调试利器debug_print_backtrace()
2012/07/23 PHP
destoon会员注册提示“数据校验失败(2)”解决方法
2014/06/21 PHP
php将数组转换成csv格式文件输出的方法
2015/03/14 PHP
php获取英文姓名首字母的方法
2015/07/13 PHP
ThinkPHP3.2.3实现分页的方法详解
2016/06/03 PHP
JavaScript面向对象编程
2008/03/02 Javascript
JSDoc 介绍使用规范JsDoc的使用介绍
2011/02/12 Javascript
js实现的倒计时按钮实例
2015/06/24 Javascript
JavaScript代码生成PDF文件的方法
2016/02/26 Javascript
Bootstrap CSS组件之下拉菜单(dropdown)
2016/12/17 Javascript
VUE axios发送跨域请求需要注意的问题
2017/07/06 Javascript
react路由配置方式详解
2017/08/07 Javascript
js异步编程小技巧详解
2017/08/14 Javascript
javascript原型链学习记录之继承实现方式分析
2019/05/01 Javascript
详解基于Wepy开发小程序插件(推荐)
2019/08/01 Javascript
nodejs使用node-xlsx生成excel的方法示例
2019/08/22 NodeJs
微信小程序点击列表跳转到对应详情页过程解析
2019/09/26 Javascript
浅谈flask中的before_request与after_request
2018/01/20 Python
python 发送和接收ActiveMQ消息的实例
2019/01/30 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
2019/04/01 Python
python取余运算符知识点详解
2019/06/27 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
关于Python3 lambda函数的深入浅出
2019/11/27 Python
OpenCV Python实现拼图小游戏
2020/03/23 Python
大学生学习生活的自我评价
2013/11/01 职场文书
表彰大会主持词
2014/03/26 职场文书
小小商店教学反思
2014/04/27 职场文书
企业安全标语
2014/06/07 职场文书
2014派出所所长群众路线对照检查材料思想汇报
2014/09/18 职场文书
责任书范本大全
2015/05/11 职场文书
React 并发功能体验(前端的并发模式)
2021/07/01 Javascript
mybatis中注解与xml配置的对应关系和对比分析
2021/08/04 Java/Android
详解使用内网穿透工具Ngrok代理本地服务
2022/03/31 Servers
Python万能模板案例之matplotlib绘制直方图的基本配置
2022/04/13 Python