ts总结第二篇

怀念夏天  金牌会员 | 2024-8-24 09:01:28 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 548|帖子 548|积分 1644

“typings”: “types/index.d.ts”,
在 TypeScript 的 tsconfig.json 配置文件中,compilerOptions 中的 typeRoots 和 types 选项以及 include 和 exclude 选项都有不同的作用和用途。理解这些配置项之间的区别和作用可以资助你更好地管理 TypeScript 项目。
1. compilerOptions 配置项

typeRoots



  • 作用:指定 TypeScript 查找类型声明文件的根目录。它告诉 TypeScript 编译器在那里查找类型定义文件(.d.ts 文件)。
  • 配置示例
    1. "typeRoots": ["./node_modules/@types", "./src/types"]
    复制代码
    这意味着 TypeScript 会在 ./node_modules/@types 和 ./src/types 这两个目录下查找类型声明文件。通常,node_modules/@types 是用于第三方库的类型声明,而 src/types 用于项目自定义的类型声明。
types



  • 作用:指定必要包含在编译中的类型声明文件。这通常用于控制哪些全局类型包被包含在项目中。
  • 配置示例
    1. "types": ["node", "lodash"]
    复制代码
    这会告诉 TypeScript 仅包罗 @types/node 和 @types/lodash 中的类型声明文件,而不包罗 node_modules/@types 中的其他类型声明。
2. include 和 exclude 配置项

include



  • 作用:指定哪些文件和目录应包含在 TypeScript 编译过程中。这些路径是相对于 tsconfig.json 文件的位置。
  • 配置示例
    1. "include": [
    2.   "src/**/*.ts",
    3.   "src/**/*.tsx",
    4.   "src/**/*.vue"
    5. ]
    复制代码
    这意味着 TypeScript 编译器会编译 src 目录下全部的 .ts、.tsx 和 .vue 文件。
exclude



  • 作用:指定哪些文件和目录应排除在 TypeScript 编译过程之外。这些路径是相对于 tsconfig.json 文件的位置。
  • 配置示例
    1. "exclude": [
    2.   "node_modules"
    3. ]
    复制代码
    这意味着 TypeScript 编译器会排除 node_modules 目录下的全部文件。
配置示例和效果

考虑以下配置的组合:
  1. {  "compilerOptions": {    "typeRoots": ["./node_modules/@types", "./src/types"]
  2. ,    "types": ["node", "lodash"]
  3.   },  "include": [    "src/**/*.ts",    "src/**/*.tsx",    "src/**/*.vue"  ],  "exclude": [    "node_modules"  ]}
复制代码


  • typeRoots:TypeScript 将在 ./node_modules/@types 和 ./src/types 目录下查找类型声明文件。
  • types:仅将 @types/node 和 @types/lodash 的类型声明文件包含在编译中,忽略 node_modules/@types 中的其他类型声明。
  • include:指定了 TypeScript 编译器应该包罗 src 目录下的 .ts、.tsx 和 .vue 文件。
  • exclude:排除了 node_modules 目录,意味着 node_modules 中的文件不会被编译(这也是默认举动)。
总结



  • typeRoots 控制类型声明文件的根目录。
  • types 控制要包含在编译中的类型声明包。
  • includeexclude 控制编译过程中的文件和目录范围。
这些配置项的结合使你能够精确地控制 TypeScript 编译器的举动,包罗如那边理类型声明文件和哪些文件应被编译。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

怀念夏天

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表