export 负责导出
import 负责导入
一个文件包含import 或 export 就会被视为一个模块
在不同的ts文件(ts文件没有 import / export 的声明)下,声明了同名字的变量,会提示错误,因为两个文件处在全局空间(namespace?),如果此时文件使用了import / export,报错就会消失,因为文件被当作模块管理起来了,之前声明的同名字变量,将成为模块的内部变量。
导出
export let a = 1export let b = {}
let a = 1let b = {}export {a,b}
导出时重命名
export {a as aa, b as bb}
重新导出,用来整合导出?在工具集的index.ts一般会这么写
export * from 'a'
默认导出,一个文件只能有一个默认导出,导入的时候,也不用加{}了
export default a
导入
import {a} from 'a'
导入时重命名
import {a as aa} from 'a'
将模块的所有部分导入到一个变量,通过它来访问其他导出部分
import * as aObj from 'a'aObj.a
直接导入,这有什么用?
import 'a'
commonjs amd
// a.tslet a = 1export = a// b.tsimport a = require('a')
