简中文档

Linting and formatting

在理想的世界里,您的代码始终干净、一致,并且没有令人讨厌的错误。这就是 Deno 内置的代码检查和格式化工具的承诺。通过将这些功能直接集成到运行时,Deno 消除了项目中对外部依赖项和复杂配置的需求。这些内置工具快速且高效,不仅节省了时间,还确保每一行代码都遵循最佳实践。

使用 deno fmtdeno lint,您可以专注于编写优秀代码,知道 Deno 会提供支持。这就像有一个警觉的助手,始终保持您的代码库处于最佳状态,让您能集中精力做真正重要的事情:构建惊人的应用程序。

代码检查

Explore all the lint rules

Linting is the process of analyzing your code for potential errors, bugs, and stylistic issues. Deno’s built-in linter, deno lint, supports recommended set of rules from ESLint to provide comprehensive feedback on your code. This includes identifying syntax errors, enforcing coding conventions, and highlighting potential issues that could lead to bugs.

要运行代码检查器,请在终端中使用以下命令:

deno lint

默认情况下,deno lint 会分析当前目录及其子目录中的所有 TypeScript 和 JavaScript 文件。如果您想仅对特定文件或目录进行检查,可以将它们作为命令的参数传递。例如:

deno lint src/

此命令将对 src/ 目录中的所有文件进行代码检查。

The linter can be configured in a deno.json file. You can specify custom rules, plugins, and settings to tailor the linting process to your needs.

linting 规则

您可以在 规则列表 文档页面查看和搜索可用规则及其用法。

格式化

格式化是自动调整代码布局以遵循一致风格的过程。Deno 的内置格式化工具 deno fmt 使用强大的 dprint 引擎,确保您的代码始终干净、可读且一致。

要格式化代码,只需在终端中执行以下命令:

deno fmt

默认情况下,deno fmt 会格式化当前目录及其子目录中的所有 TypeScript 和 JavaScript 文件。如果您想仅对特定文件或目录进行格式化,可以将它们作为命令的参数传递。例如:

deno fmt src/

此命令将格式化 src/ 目录中的所有文件。

检查格式化

deno fmt --check 命令用于验证您的代码是否根据 Deno 的默认格式化规则进行正确格式化。它不会修改文件,而是检查文件并报告任何格式化问题。特别是在持续集成 (CI) 流水线或预提交钩子中,这对于确保代码一致性特别有用。

如果存在格式化问题,deno fmt --check 将列出需要格式化的文件。如果所有文件格式正确,它将简单地退出而没有任何输出。

在 CI 中集成

您可以将 deno fmt --check 添加到您的 CI 流水线中,以自动检查格式化问题。例如,在 GitHub Actions 工作流中:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: denoland/setup-deno@v2
        with:
          deno-version: v2.x
      - run: deno fmt --check

这确保任何代码更改在合并之前遵循项目的格式化标准。

可用选项

规则描述默认值可选值
indent-width定义缩进宽度2数字
line-width定义最大行宽80数字
no-semicolons除非必要,否则不使用分号falsetrue, false
prose-wrap定义文本如何换行alwaysalways, never, preserve
single-quote使用单引号falsetrue, false
unstable-component启用格式化 Svelte、Vue、Astro 和 Angular 文件
unstable-sql启用格式化 SQL 文件
use-tabs使用制表符代替空格进行缩进falsetrue, false

格式化器可以在 deno.json 文件中进行配置。您可以指定自定义设置,以根据您的需求定制格式化过程。

你找到了你需要的东西吗?

编辑此页面
隐私政策