欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

TypeScript 素描 - 模块解析、声明合并

发布时间:2024/4/17 编程问答 62 豆豆
生活随笔 收集整理的这篇文章主要介绍了 TypeScript 素描 - 模块解析、声明合并 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

模块解析

模块解析有两种方式

相对方式  也就是以/或 ./或…/开头的,比如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 };

    除了接口与接口还支持

    命名空间与命名空间

    命名空间与类、函数、枚举

    但是类不可以与类进行合并,类也不可以与函数合并

    转载于:https://www.cnblogs.com/LiangSW/p/6266737.html

    总结

    以上是生活随笔为你收集整理的TypeScript 素描 - 模块解析、声明合并的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。