VSCode是将多行代码自动格式化为一行代码。

问题描述 投票:1回答:1

我非常喜欢自动格式化代码的想法。你可以使用eslint规则来配置你喜欢的代码风格。但是一些隐藏的规则让我不喜欢:内联文档销毁道具或jsx模板元素属性。

例子(这是我想要的方式)。

const {
  foo: 1,
  bar: 2,
  baz: 3,
} = require('qux')

下面是VSCode或它的一些插件(不确定)如何重新格式化的。

const { foo: 1, bar: 2, baz: 3 } = require('qux')

当行长超过某个指定的限制时,重新格式化为多行时,是绝对可以的。

JSX的例子(在使用JSX生成的新项目中试用) react-create-app).

  1. 好吧,那就太长行了,因此VSCode将其重新格式化为多行。

    <a
      className="App-link"
      href="https://reactjs.org"
      target="_blank"
      rel="noopener noreferrer"
    >
    
  2. 线条长度不会超过允许的长度,但我还是喜欢这种风格的衣服

    <a
      className="App-link"
      href="https://reactjs.org"
    >
    
  3. 但VSCodeplugin有不同的偏好,并将其改版为

    <a className="App-link" href="https://reactjs.org">
    

我试图找到一个特定的eslint规则来解释这种行为,但是没有找到。我试着把默认的vscode formatter从原来的 prettiernull - 运气不好

对我来说还有一件奇怪的事。VSCode没有高亮显示要重新格式化的代码段

那么如何解决这个问题呢?

更新

我只想让VSCode在这样的代码部分中做一件事,就是在行数超过了 eslint max-len 值。

javascript visual-studio-code jsx code-formatting prettier
1个回答
0
投票

如果你有 prettier 配置的。你是否尝试过 prettier.printWidth 财产 此处

{
  "prettier.printWidth": 80
}
© www.soinside.com 2019 - 2024. All rights reserved.