如何配置 VSCode 的组织导入顺序?

Jos*_*ang 13 import node.js eslint tslint visual-studio-code

我想配置 Organize Imports 的订单。

现在,它将与 node_modules 相关的导入语句移动到最顶部,并将本地ts文件移动到最底部:

普通的:

import myFunction from './myFunction';
import fs from 'fs';

console.log(fs)
console.log(myFunction)
Run Code Online (Sandbox Code Playgroud)

运行 Organize Imports 命令后:

import fs from 'fs';
import myFunction from './myFunction';

console.log(fs)
console.log(myFunction)
Run Code Online (Sandbox Code Playgroud)

我想要做的是颠倒顺序,我希望 node_modules 非常底部,本地导入非常顶部。

我怎样才能实现这种行为?

Cam*_*tle 15

根据文档,内置的“组织导入”功能没有配置。

您可以使用第三方扩展自定义导入顺序,例如alfnielsen.vsc-organize-imports或使用单独的 linting 工具(如 eslint 或 tslint)。

在 eslint 中(我的建议,因为 tslint 已被弃用),您还需要使用类似插件eslint-plugin-import来获得您想要的更具体的配置。然后,您将不使用 VSCode 的“组织导入”操作,而是使用“全部修复”操作或调用快速修复

这是一个部分示例.eslint.js配置文件。

module.exports = {
  plugins: [
    "import",
  ],
  rules: {
    "import/order": [
      "error",
      {
        groups: [
          "index",
          "sibling",
          "parent",
          "internal",
          "external",
          "builtin"
        ]
      }
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 顺序相反,应该是组:["builtin", "external", "internal", "parent", "sibling", "index", "object"] (10认同)