export用于输出模块的对外接口。export命令只要处于模块顶层就可以使用,也就是说,如果处于某个函数作用域、判断语句、条件语句内,就会报错。export命令有几种输出形式。
PS: export命令可用于
export命令用于输出模块的对外接口,import命令用于引入其他模块提供的功能接口。与export命令一样,import命令只能用于模块顶层,不能用于函数作用域、条件语句、判断语句内。import命令有以下几种形式。
1. import { num, obj } from './export.js' // 模块名,可以不添加.js后缀,但需要写配置文件,与Node知识相关 // import入的接口名字,要与export出的名字对应 console.log(num()) // 123 console.log(obj.name) // 'keith' 2. import { obj as person } from './export.js' // 可以修改import进来的变量名 console.log(person.name) // 'keith' 3. import * as $ from './export.js' // 使用*用于模块的整体加载,并重命名为$对象.此时可以通过$对象取到export的对外接口 console.log($.num()) // 123 console.log($.obj.name) // 'keith' 4. import 'normalize.css' // 用于加载整个模块,此时不需要添加变量名 5. let obj = { name: 'keith' } export default obj import person from './module.js' import boy from './module.js' // 对应于export default 命令 // 此时import进来的接口不需要添加大括号 // 且支持import时的任意命名 console.log(person.name) // 'keith' console.log(boy.name) // 'keith' 6. console.log(obj.name) // 'keith' import { obj } from './export.js' // 与export相反,import默认会被提升到模块最顶层 // 即 import { obj } from './export.js' console.log(obj)
如果在某个模块中引入了其他模块,又导出了该模块,可以采用export和import的复合写法
1. 使用{}导出模块 export { Hello, World } from './modules' // 相当于 import { Hello, World } from './moudles' export { Hello, World } 2. 改写模块的名字 export { Hello as Person } from './modules' // 相当于 import { Hello as Person } from './modules' export { Person } 3. 改写默认export default模块的名字 export { default as Person } from './modules' // 相当于 import Person from './modoules' // ./modules里的模块是通过export default导出的 export { Person }
声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com