@cprussin/tsconfig v5. 0
@cprussin/tsconfig v5. 0
此套件包含一组严格的共享打字配置.
安装
使用您选择的软件包管理器安装 :
- 无数字 :
npm install --save-dev @cprussin/tsconfig - 小时数字 :
pnpm add -D @cprussin/tsconfig - 线条数字 :
yarn add -D @cprussin/tsconfig
这些配置不设置 types 数组, 因此环境 @types/* 软件包
(例如:. @types/node, (中文(简体) ), @types/bun, (中文(简体) ), @types/jest)不默认加载.
加入你需要的东西 tsconfig.json,例如:
{
"extends": "@cprussin/tsconfig/base.json",
"compilerOptions": {
"types": ["node"]
}
}
使用量
添加您想要扩展到您的配置 tsconfig.json,例如:
{
"extends": "@cprussin/tsconfig/base.json"
}
请注意: "noEmit": true 由配置设置在此。 其意图是:
你用打字符检查并分发
未译出的文件,或者,如果你正在转出,那么转出
您正在使用的工具将覆盖在自己的配置中设置为
需要帮助。 举例来说,如果你在使用 webpack,您可以配置
ts-loader 像这样:
{
loader: "ts-loader",
options: {
compilerOptions: {
sourceMap: process.env.NODE_ENV === "development",
noEmit: false,
},
},
}
或者你可以有一个 build 您的脚本 package.json 运行 tsc
直接 :
{
"name": "foo",
"scripts": {
"build": "tsc --noEmit false --outDir ./dist"
}
}
配置
base.json
// tsconfig.json
{
"extends": "@cprussin/tsconfig/base.json"
}
其他所有东西所延伸的基本配置. 设置一堆
严格选项,例如 "strict": true, (中文(简体) ), "allowJs": false, (中文(简体) ),
"noFallthroughCasesInSwitch": true, (中文(简体) ), "noImplicitReturns": true等 (中文(简体) ). 若为
你想像我一样严格,你不会逐渐增加
键入到一个遗留项目中, 您可能不会想要覆盖大部分
这些选项,但也许可以推翻 target 或者说 lib
选项.
请注意,JSX或DOM库没有设置选项. 如果你需要的话
其中,你会想要使用 其中一个配置,延伸 base.json
而不是直接使用它.
dom.json
// tsconfig.json
{
"extends": "@cprussin/tsconfig/dom.json"
}
扩展 base.json 通过添加 dom 财务报告和审定财务报表
dom.iterable 利布尔斯.
react.json
// tsconfig.json
{
"extends": "@cprussin/tsconfig/react.json"
}
添加 "jsx": "react-jsx" 选项 dom.json 相会.
nextjs.json
// tsconfig.json
{
"extends": "@cprussin/tsconfig/nextjs.json"
}
添加 下一个js 键入符
插件
页:1 react.json 配置和开关 jsx 改为 preserve
和 module编号 :moduleResolution 用于基于捆绑工作流程.
webworker.json
// tsconfig.json
{
"extends": "@cprussin/tsconfig/webworker.json"
}
扩展 base.json 通过添加 webworker 莉比,别这样.