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 相关文章推荐
强制设为首页代码
Jun 19 Javascript
javascript中使用replaceAll()函数实现字符替换的方法
Dec 25 Javascript
TypeScript具有的几个不同特质
Apr 07 Javascript
不用一句js代码初始化组件
Jan 27 Javascript
javascript+css3 实现动态按钮菜单特效
Feb 06 Javascript
如何高效率去掉js数组中的重复项
Apr 12 Javascript
分享一个精简的vue.js 图片lazyload插件实例
Mar 13 Javascript
Vue键盘事件用法总结
Apr 18 Javascript
JavaScript利用fetch实现异步请求的方法实例
Jul 26 Javascript
Element-Ui组件 NavMenu 导航菜单的具体使用
Oct 24 Javascript
es6中class类静态方法,静态属性,实例属性,实例方法的理解与应用分析
Feb 15 Javascript
vue中的可拖拽宽度div的实现示例
Apr 08 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
一个PHP操作Access类(PHP+ODBC+Access)
2007/01/02 PHP
PHP运行模式汇总
2016/11/06 PHP
Laravel5.1 框架路由基础详解
2020/01/04 PHP
用Javascript实现UTF8编码转换成gb2312编码
2006/12/22 Javascript
Javascript中eval函数的使用方法与示例
2007/04/09 Javascript
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
jQuery实战之仿淘宝商城左侧导航效果
2011/04/12 Javascript
JavaScript Promise启示录
2014/08/12 Javascript
使用Jquery实现每日签到功能
2015/04/03 Javascript
用vue的双向绑定简单实现一个todo-list的示例代码
2017/08/03 Javascript
JavaScript学习笔记之函数记忆
2017/09/06 Javascript
微信小程序实现图片上传、删除和预览功能的方法
2017/12/18 Javascript
jQuery 操作 HTML 元素和属性的方法
2018/11/12 jQuery
Vue-CLI 项目在pycharm中配置方法
2019/08/30 Javascript
浅谈layui使用模板引擎动态渲染元素要注意的问题
2019/09/14 Javascript
借助云开发实现小程序短信验证码的发送
2020/01/06 Javascript
详解vue中v-model和v-bind绑定数据的异同
2020/08/10 Javascript
[08:47]2018国际邀请赛 OG战队举杯时刻
2018/08/29 DOTA
如何在python字符串中输入纯粹的{}
2018/08/22 Python
Python给图像添加噪声具体操作
2019/03/03 Python
Python Django切换MySQL数据库实例详解
2019/07/16 Python
简单易懂Pytorch实战实例VGG深度网络
2019/08/27 Python
Python 类方法和实例方法(@classmethod),静态方法(@staticmethod)原理与用法分析
2019/09/20 Python
Python中join()函数多种操作代码实例
2020/01/13 Python
Django自定义列表 models字段显示方式
2020/04/03 Python
Python中如何引入第三方模块
2020/05/27 Python
app内嵌H5 webview 本地缓存问题的解决
2020/10/19 HTML / CSS
c/c++某大公司的两道笔试题
2014/02/02 面试题
酒店销售主管岗位职责
2014/01/04 职场文书
爱耳日活动总结
2014/04/30 职场文书
银行金融服务方案
2014/06/11 职场文书
城市创卫标语
2014/06/17 职场文书
2014法制宣传日活动总结
2014/07/09 职场文书
2014年转正工作总结
2014/11/08 职场文书
2014年家长学校工作总结
2014/11/20 职场文书
MySql数据库触发器使用教程
2022/06/01 MySQL