IDEA使用时常用配置(快捷键、警告处理、保存时自动格式化、@支持跳转)

常用快捷键

Shift两次:查找代码

Ctrl+E:当前打开的文件

Ctrl+Alt+B:查找对应的实现

Alt+F7:查找引用 或者使用 Ctrl + 鼠标点击对应方法

代码警告处理

关闭拼写检查

单词拼写检查太烦人了,建议关掉。

Settings中查找Inspections,右侧搜索Typo,取消勾选即可。

image-20220303114035182

未使用方法警告

Settings中查找Inspections,右侧搜索Declaration redundancy

找到 Unused declaration,修改只检测私有的方法。

image-20241030141502733

保存格式化插件

现在新版本的IDEA都自带了

设置中搜索Actions on Save

代码格式化

删除空行

在 IntelliJ IDEA 中,你可以通过配置代码格式化规则来删除多余的空行。

以下是具体步骤:

  1. 打开设置:

    在菜单中,点击 File(文件) -> Settings(设置)(在 macOS 上是 IntelliJ IDEA -> Preferences(首选项))。

  2. 进入代码风格设置:

    在设置窗口中,展开 Editor(编辑器)部分,然后选择 Code Style(代码风格)。

  3. 选择语言:

    Code Style 部分,选择你正在使用的编程语言(例如,Java、Python、JavaScript 等)。

  4. 配置空行删除:

    在右侧的配置面板中,找到 Blank Lines(空行)选项。

    对于不同语言,此处可能会有不同的配置项。

    通常,你会看到类似于 Keep Maximum Blank Lines(保留最大空行数)或 Keep Minimum Blank Lines(保留最小空行数)的设置。

    将这些设置调整为 0,以确保代码格式化时删除所有空行。

    image-20241030155228057

  5. 应用并保存设置:

    点击 OKApply 以保存你的更改。

宏+快捷键

在开发前端的时候 我们会用到eslint插件,插件要求的格式和IDEA默认的格式可能不一样,这样就算我们使用了上面的save action插件,也没有意义,因为格式的规则不一样,那么就有两种解决方法

  • 录制宏 设置快捷键
  • 设置IDEA代码格式化规则

两种方式录制宏会相对简单点

为什么不用Actions on SaveRun eslint --fix呢?

因为他是在保存的时候触发的,保存后才会Run eslint --fix,第一次保存因为没有修正代码,如果开启了eslint验证,就会报错,还得再保存一次。

首先点击 Edit => Macros 进入录制状态

在我们的代码页面右键点击Fix ESLint Problems,再点击Ctrl+S进行保存

image-20220303103725886

结束录制 宏名称设置为eslint_fix_save

打开IDEA设置页面,点开keymap设置页,搜索eslint_fix_save

设置快捷键为Alt+S,这样我们就可以按Alt+S进行格式化并且保存了。

注意:

这里快捷键是可以设置为Ctrl+S的,因为宏中记录的不是快捷键而是快捷键对应的操作。

这种方式一定要把save action关闭掉。

对应的宏如图所示:

image-20220303104722944

@路径支持跳转

IDEA创建前端项目的时候,相对路径可以直接点击连接,跳转到对应的文件中,但是如果我们配置了@后,添加@的路径就不支持跳转了。

webpack.config.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
const path = require("path");

function resolve(dir) {
return path.join(__dirname, dir);
}

module.exports = {
resolve: {
extensions: [".js", ".vue", ".json"],
alias: {
"@": resolve("src"),
},
},
};

这是只要我们在项目根目录添加以下文件,就可以支持跳转了

jsconfig.json

1
2
3
4
5
6
7
8
9
10
11
12
13
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@/*": [
"./src/*"
]
}
},
"include": [
"./src/**/*"
]
}