export和export default的区别

267 阅读1分钟

平时在项目开发的过程中,好像两个都有用,但是一直没时间将这两个做一个具体的对比,今天就具体来看看这两个的区别有哪些

export

常见的写法,先定义需要导出的常量、函数、文件、模块等,再使用 export 一起导出

1.png

导入的时候只需要使用 import + {导入的名称}

import {test, a} from 'xxxx'

当然你也可以使用 as 来给单个的需要导入的变量(函数等)起别名(变量名称起的有些随意,别介意) 例如

import {test, a as aaa} from 'xxxx'

当然也可以为整个导入模块起别名

import * as tool from 'xxxx'

这个tool是自定义的变量的名称,使用的时候需要像这样使用(这个在需要导入多个变量或者函数的时候可以这样简写,可以为我们节省很多 CV 的时间)>.<

tool.a() 或者 tool.test

由于export 是可以写多个的,所以上面的你也可以这样写, 同时export多个

2.png

使用的时候同上面一样

import {test, a} from 'xxxx'

export default则不一样,在同一个模块中只能导出一次

export default

上面的例子我们使用export default 改写一下

3.png

我们在使用的时候,只需要这样导入

import tool from 'xxxx

这个时候就不需要使用{}, 这个tool是自己随便起的变量的名称,使用的时候就是

tool.a() 和 tool.test

总结

总的来说两者的区别还是有点大的,主要体现在

1、同一个模块或者文件中export可以使用多次而export default 只能使用一次

2、导入的时候export中单个导入是需要使用{},而export default则么有这个限制