export default 和 export 的使用方式

首先export default'export均可用于导出常量,函数,文件,模块等,

// until.js
var name = "boy";
var getName =function(name){
   console.log(name);
}
export {name,getName};
// 在大括号中添加name,getName变量,在通过export输出,就可以将对应的变量值以name,getName变量标识符形式暴露给其他的文件而被读取到
//不能直接写成export name 这样的形式,如果这样就相当于直接export "boy"了,外部文件就无法读取到文件内部的name的值

上面也可以换另一种的写法输出变量
export var name = 'boy';
export function getName(name){
    console.log(name)
}
// 在大括号中添加name,getName变量,在通过export输出,就可以将对应的变量值以name,getName变量标识符形式暴露给其他的文件而被读取到
//不能直接写成export name 这样的形式,如果这样就相当于直接export "boy"了,外部文件就无法读取到文件内部的name的值

上面也可以换另一种的写法输出变量
export var name = 'boy';
export function getName(name){
    console.log(name)
}

import obj from './until.js'
import obj1 from './until.js'
// export default 输出一个叫做default 的变量,然后系统可以允许你为它取任意名字,所以可以为import的模块取任何变量名,且不需要大括号。

例如:
1.在a.js使用export导出两个方法isString和isObject,在b.js使用import导入时的写法:import { isString, isObject } from "./a.js",在使用import导入的时候一定要大括号,导入之后在b.js便可以直接调用这两个方法,调用时这样写isObject(obg);一定要加括号

let  isString  = function (obj) {
  return judgeType(obj, '[object String]');
}

function isObject(obj) {
  return judgeType(obj, '[object Object]');
}

export {
  isString,
  isObject
}

通过export方式导出,在导入时要加{ },export default则不需要

在a.js里面定义方法并使用export default导出

let test=function (){
  console.log("test");
};
export default test;

在b.js里面通过import导入import test from "./assets/js/chat.js",注意此时导入不需要加{}

最后简单说明一下,
1 使用export导出需要{},与此相对使用import导入也需要{}
2 使用export default 导出不需要{},与此相对使用import导入也不需要{}

你可能感兴趣的:(export default 和 export 的使用方式)