Skip to content

工具配置

AdonisJS 严重依赖 TypeScript、Prettier 和 ESLint 来保持代码一致性,在构建时检查错误,更重要的是,提供愉快的开发体验。

我们已将所有选择抽象到即用型配置预设中,这些预设被所有官方包和官方启动套件使用。

如果你想在用 TypeScript 编写的 Node.js 应用程序中使用相同的配置预设,请继续阅读本指南。

TSConfig

@adonisjs/tsconfig 包包含 TypeScript 项目的基本配置。我们将 TypeScript 模块系统设置为 NodeNext,并使用 TS Node + SWC 进行即时编译。

随意探索基本配置文件应用程序配置文件包开发配置文件中的选项。

你可以按如下方式安装包并使用它。

sh
npm i -D @adonisjs/tsconfig

# 确保也安装以下包
npm i -D typescript ts-node-maintained @swc/core

创建 AdonisJS 应用程序时从 tsconfig.app.json 文件扩展。(启动套件预配置)。

jsonc
{
  "extends": "@adonisjs/tsconfig/tsconfig.app.json",
  "compilerOptions": {
    "rootDir": "./",
    "outDir": "./build"
  }
}

为 AdonisJS 生态系统创建包时从 tsconfig.package.json 文件扩展。

jsonc
{
  "extends": "@adonisjs/tsconfig/tsconfig.package.json",
  "compilerOptions": {
    "rootDir": "./",
    "outDir": "./build"
  }
}

Prettier 配置

@adonisjs/prettier-config 包包含自动格式化源代码以保持一致样式的基本配置。随意探索 index.json 文件中的配置选项。

你可以按如下方式安装包并使用它。

sh
npm i -D @adonisjs/prettier-config

# 确保也安装 prettier
npm i -D prettier

package.json 文件中定义以下属性。

jsonc
{
  "prettier": "@adonisjs/prettier-config"
}

另外,创建一个 .prettierignore 文件以忽略特定文件和目录。

// title: .prettierignore
build
node_modules

ESLint 配置

@adonisjs/eslint-config 包包含应用 linting 规则的基本配置。随意探索基本配置文件应用程序配置文件包开发配置文件中的选项。

你可以按如下方式安装包并使用它。

TIP

我们的配置预设使用 eslint-plugin-prettier 来确保 ESLint 和 Prettier 可以协同工作而不会互相干扰。

sh
npm i -D @adonisjs/eslint-config

# 确保也安装 eslint
npm i -D eslint

创建 AdonisJS 应用程序时从 eslint-config/app 文件扩展。(启动套件预配置)。

json
// title: package.json
{
  "eslintConfig": {
    "extends": "@adonisjs/eslint-config/app"
  }
}

为 AdonisJS 生态系统创建包时从 eslint-config/package 文件扩展。

json
// title: package.json
{
  "eslintConfig": {
    "extends": "@adonisjs/eslint-config/package"
  }
}