【问题标题】:Weird behaviour with prettier in VS CodeVS Code 中更漂亮的奇怪行为
【发布时间】:2021-04-28 18:25:28
【问题描述】:

所以 Prettier 对我来说表现得很奇怪。我用一种叫做solidity的语言有这个简化的界面:

interface Token {
  function getTotalSupply(address _market, TokenType _tokenType) external view returns (uint256);
  function mint(address _to, uint256 _amount, TokenType _tokenType) external;
}

格式化后会变成这样:

interface Token {
  function getTotalSupply(address _market, TokenType _tokenType) external view returns (uint256);

  function mint(
    address _to,
    uint256 _amount,
    TokenType _tokenType
  ) external;
}

我希望这两个函数保持在一条线上。 printWidth 选项似乎不是这里的问题,因为第一个函数实际上比第二个函数长并且不换行。不同之处似乎在于第二个函数有更多参数,并且每个具有超过 2 个参数的函数都会被拆分。这是我的 .prettierrc

{
  "overrides": [
    {
      "files": "*.sol",
      "options": {
        "printWidth": 160,
        "tabWidth": 4,
        "useTabs": false,
        "singleQuote": false,
        "bracketSpacing": false,
        "explicitTypes": "always"
      }
    }
  ]
}

我该如何解决这个问题?

【问题讨论】:

    标签: visual-studio-code solidity prettier


    【解决方案1】:

    这对我来说看起来不错。您的 .Prettierrc 文件是否在根目录中,您是否在设置后重新加载/重新启动?

    【讨论】:

    • 文件在根目录下,像 tabWidthuseTabs 这样的设置工作得很好,除了被忽略的 printWidth并导致这种奇怪的行为。
    • 这对我来说似乎不太好,首先我认为不应该在接口声明之间添加换行符,而且我不认为mint 函数应该分成多行,因为它只有 80 个字符长
    • 我的意思是你的 .Prettierrc 对我来说似乎很好 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-02
    • 2020-09-04
    • 1970-01-01
    • 2019-01-23
    • 2021-08-08
    • 2021-04-04
    • 2020-10-04
    相关资源
    最近更新 更多