Сохранить вертикальные пробелы в шаблоне Vue с Prettier

Я использую eslint-plugin-vue с моим проектом Vue.

У меня есть следующий .prettierrc файл:

// /.prettierrc
{
  "arrowParens": "avoid",
  "bracketSpacing": true,
  "insertPragma": false,
  "jsxBracketSameLine": false,
  "printWidth": 80,
  "proseWrap": "preserve",
  "requirePragma": false,
  "semi": false,
  "singleQuote": true,
  "tabWidth": 2,
  "trailingComma": "es5",
  "useTabs": false
}

И следующий .eslintrc.js файл:

module.exports = {
  root: true,
  env: {
    node: true,
  },
  extends: [
    'plugin:vue/recommended',
    '@vue/prettier',
  ],
  rules: {
    'linebreak-style': ['error', 'unix'],
    'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
    'vue/max-attributes-per-line': 'off',
    'vue/html-self-closing': [
      'error',
      {
        html: {
          void: 'always',
          normal: 'always',
          component: 'always',
        },
        svg: 'always',
        math: 'always',
      },
    ],
  },
  plugins: ['vue'],
  parserOptions: {
    parser: 'babel-eslint',
  },
}

Но, к сожалению, красивее думает, что

<template>
  <header><a href="/" class="logo"> Home </a></header>
</template>

Красивее чем

<template>
  <header>
    <a href="/" class="logo">
      Home
    </a>
  </header>
</template>

Красивее быть раздражающим


Как я могу сказать, что prettier сохраняет мои вертикальные пробелы в шаблоне Vue?

Есть ли правила, похожие на то, что я хочу?


person Acidic9    schedule 13.11.2018    source источник


Ответы (2)


Ваш единственный вариант (обходной путь) - использовать игнорирование.

Файлы Ex Js. // prettier-ignore
Ex файлы Html. <!-- prettier-ignore -->

https://prettier.io/docs/en/ignore.html

person Umur Alpay    schedule 08.05.2019

Вот список правил для vue в eslint: https://vuejs.github.io/eslint-plugin-vue/rules/ Но если вы отключите правило, оно будет применено ко всему вашему коду.

Кроме того, похоже, вы можете указать Prettier игнорировать блок: https://prettier.io/docs/en/ignore.html#html

Кроме того, я бы сказал, что это более «читабельно», но это моя точка зрения :)

<template>
  <header>
    <a href="/" class="logo">Home</a>
  </header>
</template>
person antoinecarat    schedule 13.03.2019