先说一下理解思路
- 如果你要导出多个东西,必须用
具名导出 ,不然人家怎么知道哪个是哪个呢?
- 如果你只导出一个东西,那你即可
具名导出,也可以不具名导出
具名导出也就是export {xxx,yyy,zzz}
const model='111'
export {model}
具名导入
const {model} = require('@/model.js');
const {model as anyName} = require('@/model.js');
const anyName = require('@/model.js').model;
import {model} from '@/model.js';
import {model as anyName} from '@/model.js';
不具名导出也就是 export default xxx , 一个模块也只能不具名导出一次
const model='111'
export default model
不具名导入
const anyName = require('@/model.js').default;
import anyName from '@/model.js'
可以出现多个export 但最多只能有一个export default
由于es6模块是静态加载的,因此import和export不能出现在判断等动态语句中
动态导入import() 能够实现懒加载

在线示例在此