模块解析有两种方式 相对方式 也就是以/或 ./或…/开头的,比如import jq from “/jq” 非相对方式 比如 import model from “modelA”
TypeScript的模块解析吸取了Node与Classic两种方式的好处并结合在一起 例如当前文件夹是 root/src/,其中a.ts导入了modelB 相对方式
-
/root/src/moduleB.ts
-
/root/src/moduleB.tsx
-
/root/src/moduleB.d.ts
-
/root/src/moduleB/package.json (如果指定了"typings" 属性)
-
/root/src/moduleB/index.ts
-
/root/src/moduleB/index.tsx
/root/src/moduleB/index.d.ts
非相对方式
-
/root/src/node_modules/moduleB.ts
-
/root/src/node_modules/moduleB.tsx
-
/root/src/node_modules/moduleB.d.ts
-
/root/src/node_modules/moduleB/package.json (如果指定了"typings" 属性)
-
/root/src/node_modules/moduleB/index.ts
-
/root/src/node_modules/moduleB/index.tsx
-
/root/src/node_modules/moduleB/index.d.ts
-
/root/node_modules/moduleB.ts
-
/root/node_modules/moduleB.tsx
-
/root/node_modules/moduleB.d.ts
-
/root/node_modules/moduleB/package.json (如果指定了"typings" 属性)
-
/root/node_modules/moduleB/index.ts
-
/root/node_modules/moduleB/index.tsx
-
/root/node_modules/moduleB/index.d.ts
-
/node_modules/moduleB.ts
-
/node_modules/moduleB.tsx
-
/node_modules/moduleB.d.ts
-
/node_modules/moduleB/package.json (如果指定了"typings" 属性)
-
/node_modules/moduleB/index.ts
-
/node_modules/moduleB/index.tsx
/node_modules/moduleB/index.d.ts
除此之外,TypeScript还考虑到其它的复杂情况,给出了我们 路径映射 与 虚拟目录,这些都是要到tsconfig中进行配置的,这里就不细谈了。有需要再去看相关资料吧 声明合并 TypeScript允许两个接口合并为一个接口,像下面这样。 interface Box {
height: number;
width: number;
}
interface Box {
scale: number;
}
let box: Box = { height: 5, width: 6, scale: 10 };
除了接口与接口还支持
命名空间与命名空间
命名空间与类、函数、枚举
但是类不可以与类进行合并,类也不可以与函数合并
|
请发表评论