关于ES6的 模块功能 Module 中export import的用法和注意之处
来源:互联网 发布:js domloaded 编辑:程序博客网 时间:2024/06/06 21:56
export default命令用于指定模块的默认输出。显然,一个模块只能有一个默认输出,因此export deault命令只能使用一次。所以,import命令后面才不用加大括号,相反其它的export 输出 可以有多个,且import时必须加大括号,示例如下:
1 // modules.js 2 function add(x, y) { 3 return x * y; 4 } 5 export {add as default}; 6 // 等同于 7 // export default add; 8 9 // app.js10 import { default as xxx } from 'modules';11 // 等同于12 // import xxx from 'modules';
正是因为export default
命令其实只是输出一个叫做default
的变量,所以它后面不能跟变量声明语句,而export需要跟变量声明或者大括号作为输出:
1 // 正确 2 export var a = 1; 3 4 // 正确 5 var a = 1; 6 export default a; // 写法1 7 export {a} // 写法2 8 9 // 错误10 export default var a = 1;
import 时候的路径问题(新手容易碰到)
开始玩的时候,总是出现 cannot find module 问题,原来 在 import 的时候 如果不使用相对路径或者绝对路径,node默认会去node_modules/文件夹下去找,例如:
1 import * as obj from 'exports'2 // node 会试着去寻找 node_modules/exports.js 模块3 4 // 正确写法5 import * as obj from './exports'
关于 import * as obj from 'xx' 这种写法是把所有的输出包裹到obj对象里
对了,还有模块的继承写法:
1 // circle.js 2 export var a = 1; 3 4 // circleplus.js 当前模块继承了 circle 模块的所有输出 5 // 此处只是继承了输出,并不能直接使用 6 7 export * from 'circle'; 8 export var e = 2.71828182846; 9 export default function(x) {10 return Math.exp(x);11 }12 13 // 继承之后,circleplus.js 相当于下面代码14 export var a = 1;15 export var e = 2.71828182846;16 export default function(x) {17 return Math.exp(x);18 }
代码改变世界,我的《源代码》,我的世界!
阅读全文
0 0
- 关于ES6的 模块功能 Module 中export import的用法和注意之处
- ES6模块的import和export用法总结
- ES6模块的import和export用法总结
- ES6模块的import和export用法总结
- ES6模块之export和import详解
- ES6 module export和import
- 详解JavaScript ES6中export import与export default的用法和区别
- ES6 export & import的基本用法
- es6 module / import / export
- ES6 模块化(Module)export和import详解
- ES6中export及export default、import的区别
- ES6的module语法--export
- Es6 中 export和import详解
- ES6的模块Module
- export与module.export的区别和用法
- es6中模块化:export和export default的区别
- ES6 export的常用用法
- es6的export default,export,import的区别
- 引用新体验!
- cuda之线程分配
- angular2路由预加载策略
- mybatis增删改应用(三)
- SQLServer 中提高查询性能的方法
- 关于ES6的 模块功能 Module 中export import的用法和注意之处
- Salty Fish
- Eclipse注释模板
- 数据结构实验之查找七:线性之哈希表
- java之继承剖析
- 目前最流行的测试工具
- activiti工作流相关表查询
- ubuntu下的sublime 安装使用以及常见问题
- 关系数据库是如何工作的