export 与 export default
2024-09-06 00:07:37
export 和 import 都属于 ES6 的内容。
node 的 module 遵循的是 CommonJS规范,requirejs遵循AMD,seajs遵循CMD,虽各有不同,
但总之还是希望保持较为统一的代码风格。
ES6发布的 module 并没有直接采用 CommonJS,甚至连 require 都没有采用,也就是说 require
仍然只是 node 的一个私有的全局方法, module.exports 也只是 node 私有的一个全局变量属性,
跟标准半毛钱关系都没有。
export 与 export default 区别:
1. 使用export导出的话,必须使用 { } 来接收。
2. 一个文件中,可以有很多个 export, 但只能有一个 export default。
示例:
demo1.js :
export let A = 123;
export function test() {
console.log('test');
}
export class Hello {
test () {
console.log('class');
}
}
demo2.js:
import { A, test, Hello} from './demo1'
console.log(A, test, Hello);
需要哪一项,就拿哪一项,
import {A} from './demo1';
console.log(A);
导出别名
import * as lesson from './demo1';
console.log(lesson.A,lesson.test); //lesson是个对象
另外一种写法:(推荐这种写法)
demo1.js:
let A = 123;
let test = function () {
console.log('test');
}
class Hello{
test () {
console.log('class');
}
} export default {
A,
test,
Hello
}
demo2.js:
import lesson from './demo1'; //lesson可以写任何名称
console.log(lesson.A)
最新文章
- virtualbox设置共享文件夹代替sftp同步代码
- ubuntu-12.10-server安装图形界面
- socket方法
- [JAVA][RCP]Clean project之后报错:java.lang.RuntimeException: No application id has been found.
- POJ2761---Feed the dogs (Treap求区间第k大)
- Opencv各个版本的万能头文件
- Mvaen仓库文件添加阿里镜像
- Django Restframework 过滤器
- Jmeter 分布式(Jmeter5.1版本)
- PHP获取文件大小的方法详解
- layui.laytpl中js方法书写及调用:去除html标签
- Hadoop+Hbas完全分布式安装部署
- Maximum Subarray LT53
- 《数据挖掘:R语言实战》
- 【转】strlen源码
- js绝招
- [svc]lnmp一键安装脚本(含有np与mysql分离)
- HDU 1116 Play on Words(欧拉路径(回路))
- Python 实现windows后台服务
- Ubuntu安装google-chrome