如何禁用断线更漂亮

Posted

技术标签:

【中文标题】如何禁用断线更漂亮【英文标题】:How can I disable break line prettier 【发布时间】:2021-08-01 16:39:30 【问题描述】:

例如,我的 printWidth 值是 200 之类的,每次都会中断。

<Form.Item label="xxx"><Input /></Form.Item>
<Form.Item label="yyy"><Select /></Form.Item>
<Form.Item label="zzzz"><Input /></Form.Item>

当我在这个代码块中运行时,eslint 结果是

<Form.Item label="xxx">
  <Input />
</Form.Item>
<Form.Item label="yyy">
  <Select />
</Form.Item>
<Form.Item label="zzzz">
  <Input />
</Form.Item>

如果 printWidth 不是最大值,我不想换行。怎么屏蔽?

Eslint 规则。

module.exports = 
  extends: ['airbnb-typescript-prettier'],
  parser: '@typescript-eslint/parser',
  "ignorePatterns": ["**/components/global/context_menu/*"],
  rules: 
    "radix": 'off',
    '@typescript-eslint/explicit-module-boundary-types': 'off',
    '@typescript-eslint/no-explicit-any': 'off',
    'react/button-has-type': 'off',
    'no-use-before-define': 'off',
    'react/jsx-filename-extension': 'off',
    'react/prop-types': 'off',
    'jsx-a11y/alt-text': 'off',
    'react/jsx-props-no-spreading': 'off',
    'comma-dangle': 'off',
    'consistent-this': [0, 'component'],
    '@typescript-eslint/no-this-alias': 'off',
    'react/forbid-prop-types': 'off',
    'no-self-compare': 'off',
    'react/require-default-props': 'off',
    'no-return-assign': 'off',
    'react/destructuring-assignment': 'off',
    camelcase: 'off',
    "jsx-a11y/label-has-associated-control":"off",
    'prefer-destructuring': 'off',
    'react-hooks/exhaustive-deps':'off',
    'jsx-a11y/click-events-have-key-events':'off',
    'jsx-a11y/no-static-element-interactions':'off',
    'no-throw-literal': 'off',
    'no-mixed-spaces-and-tabs': 'off',
    'no-tabs': 'off',
    'react/no-unescaped-entities': 'off',
    'no-underscore-dangle': 'off',
    'import/no-cycle': 'off',
    'max-len': [2, 150, 2],
  ,
;

更漂亮的规则。

module.exports = 
    singleQuote: true,
    trailingComma: 'all',
    printWidth: 200,
    arrowParens:"always"
  ;

【问题讨论】:

【参考方案1】:

如果你不想让更漂亮的人为你的代码的一部分设置样式,你只需要这样做:(更漂亮的忽略注释)

/* prettier-ignore */
<Form.Item label="xxx"><Input /></Form.Item>

这是基于文档: https://prettier.io/docs/en/ignore.html

希望这会有所帮助?

【讨论】:

我不能把这个代码块放在任何地方。 其实更漂亮的文档已经建议不要以你想要的方式使用更漂亮的。 prettier.io/docs/en/options.html 看他们说:换句话说,不要尝试使用 printWidth 就好像它是 ESLint 的 max-len - 它们不一样。 max-len 只是说明允许的最大行长度是多少,而不是通常首选的长度是多少——这是 printWidth 指定的。

以上是关于如何禁用断线更漂亮的主要内容,如果未能解决你的问题,请参考以下文章

如何在 vscode 中禁用更漂亮的错误突出显示

如何禁用更漂亮的设置创建新的> html标签行?

为单个文件禁用更漂亮

在更漂亮的情况下禁用 printWidth

如何在 XStream 中禁用漂亮打印(空白/换行符)?

保存混乱的 .jsx 文件时更漂亮的格式