首页 前端知识 tsconfig.json和tsconfig.app.json文件解析(vue3 ts vite)

tsconfig.json和tsconfig.app.json文件解析(vue3 ts vite)

2024-07-10 22:07:43 前端知识 前端哥 990 851 我要收藏

 

tsconfig.json

{
  "files": [],
  "references": [
    {
      "path": "./tsconfig.node.json"
    },
    {
      "path": "./tsconfig.app.json"
    }
  ]
}

https://www.typescriptlang.org/tsconfig/#files

 

files: 在这个例子中,files 数组是空的。这意味着此配置文件本身不直接包含任何 TypeScript 文件。这是因为它作为一个顶层项目配置,用于引用其他的 TypeScript 配置文件,而不是直接处理文件。

https://www.typescriptlang.org/tsconfig/#references

references: 这个属性包含了一个对象数组,每个对象指向一个不同的 tsconfig 文件。这表明当前项目依赖于这些子项目或配置。每个引用都通过 path 属性指定,指向一个子项目的 tsconfig.json 文件。

tsconfig.app.json:

{
  "extends": "@vue/tsconfig/tsconfig.dom.json",
  "include": ["env.d.ts", "src/**/*", "src/**/*.vue"],
  "exclude": ["src/**/__tests__/*"],
  "compilerOptions": {
    "experimentalDecorators": true,
    "composite": true,
    "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",

    "baseUrl": ".",
    "paths": {
      "@/*": ["./src/*"]
    }
  }
}

https://www.typescriptlang.org/tsconfig/#extends

"extends": "@vue/tsconfig/tsconfig.dom.json": 这表明该配置继承自一个预设的 TypeScript 配置,专为在 DOM 环境中运行的 Vue 应用程序设计。这个预设可能包含了一套推荐的编译器选项,适用于大多数 Vue 项目,如适当的 lib 选项(比如包含 dom 和其他浏览器环境的类型定义),以及为 Vue 文件和 DOM API 使用的最佳实践

https://www.typescriptlang.org/tsconfig/#include

"include": ["src/**/*", "src/**/*.vue", "types/**/*.d.ts"]: 指定了 TypeScript 编译器应该包含哪些文件。这里包括了项目的 src 目录下的所有文件(无论何种扩展名),所有 Vue 组件文件(.vue),以及 types 目录下的所有 TypeScript 声明文件(.d.ts)。这确保了项目中所有相关的文件都将被 TypeScript 处理。

https://www.typescriptlang.org/tsconfig/#exclude

"exclude": ["src/**/__tests__/*"]: 排除了所有在 __tests__ 目录下的文件,这通常是单元测试文件所在的地方。这样做可以防止测试文件被编译到生产构建中,同时也可能加快编译过程,因为测试文件不会被 TypeScript 处理。

https://www.typescriptlang.org/tsconfig/#experimentalDecorators

装饰器支持(Decorator Support):装饰器是一种特殊的语法,用于修改类、方法、属性等的行为。在tsconfig.json中,你可以使用"experimentalDecorators"选项来启用装饰器的支持。将该选项设置为true后,你就可以在代码中使用装饰器。

TypeScript: TSConfig Reference - Docs on every TSConfig option

"composite": true: 启用了项目的组合模式,这对于大型项目或者当你想要将项目分割成多个子项目时非常有用。它允许 TypeScript 项目引用其他 TypeScript 项目,便于代码的模块化和重用。

https://www.typescriptlang.org/tsconfig/#tsBuildInfoFile

"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo": 指定了 TypeScript 构建信息文件的存放位置。这个文件用于存储关于项目的增量编译信息,可以帮助 TypeScript 编译器快速地执行后续的编译,提高构建性能

https://www.typescriptlang.org/tsconfig/#baseUrl

"baseUrl": ".": 设置了模块解析的基准目录为项目的根目录。这是 paths 映射的基础。

https://www.typescriptlang.org/tsconfig/#paths 

"paths": {"@/*": ["./src/*"]}: 提供了一个别名配置,允许在项目中使用 @ 前缀来引用 src 目录下的文件。这是一种常见的做法,可以使得在项目中引用模块时的路径更简洁明了。

人工智能学习网站

https://chat.xutongbao.top

参考链接

https://blog.csdn.net/shaoshaoh/article/details/136374954

 

转载请注明出处或者链接地址:https://www.qianduange.cn//article/13961.html
标签
评论
发布的文章

jQuery-w3school(2020

2024-08-04 23:08:08

jQuery常用方法总结

2024-08-04 23:08:34

Vue2使用echarts树图(tree)

2024-08-04 23:08:29

图表库-Echarts

2024-08-04 23:08:57

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!