Я пытаюсь настроить редактор VSCode для автоформатирования кода Vuejs.Я использую расширение Vetur, расширение Prettier и расширение ESLint .
Проблема в том, что при сохранении моих файлов .vue
одинарные кавычки автоматически заменяются на двойные кавычки в моих элементах <template>
:
Когда я пишукод, как это, а затем сохранить ...
<template>
<section>
<section v-if='errored'>
...snip...
</template>
VSCode автоматически заменяет одинарные кавычки на двойные кавычки в разделе .vue template
примерно так:
<template>
<section>
<section v-if="errored"> <--------
...snip...
</template>
И тогда яполучать предупреждения и ошибки для остальной части кода <template>
.Однако код в разделах <script>
и <style>
отдельных файловых компонентов .vue
остался нетронутым / и / или исправлен правильно ... только в разделе <template>
есть вышеуказанная проблема.Итак, у меня правильные настройки?
Мои настройки:
Я установил свой конфигурационный файл Prettier в корне проекта .prettierrc.js
примерно так:
module.exports = {
singleQuote: true
};
Мой .eslintrc.js
выглядит так:
module.exports = {
root: true,
env: {
node: true
},
extends: [
'plugin:vue/essential',
'plugin:prettier/recommended',
'@vue/prettier'
],
rules: {
'no-console': 'off',
'no-debugger': 'off'
},
parserOptions: {
parser: 'babel-eslint'
}
};
А потом в моих пользовательских настройках VSCode У меня есть:
...snip..
"vetur.validation.template": false, <-- turn off Vetur’s linting feature and rely on ESLint + Prettier, instead
"eslint.validate": [
{
"language": "vue",
"autoFix": true
},
{
"language": "html",
"autoFix": true
},
{
"language": "javascript",
"autoFix": true
}
],
"eslint.autoFixOnSave": true,
"editor.formatOnSave": true
И файл приложения package.json
содержит следующие devDependencies:
"devDependencies": {
"@vue/cli-plugin-babel": "^3.2.0",
"@vue/cli-plugin-eslint": "^3.2.1",
"@vue/cli-service": "^3.2.0",
"@vue/eslint-config-prettier": "^4.0.1",
"node-sass": "^4.9.4",
"sass-loader": "^7.1.0",
"vue-template-compiler": "^2.5.17"
}