Vue项目HTML代码格式化

.eslintrc文件配置 eslint-plugin-vue 插件

  • 解析器使用vue-eslint-parser,注意babel-eslint必须写在parserOptions里面,配置如下:
    parser: “vue-eslint-parser”,
    parserOptions: {
    parser: ‘babel-eslint’,
    sourceType: ‘module’
    },

  • 插件使用vue,配置如下:
    plugins: [ “vue” ],

  • eslint-plugin-vue插件有三种不同程度的规范:vue/vue3-essential、vue3-strongly-recommended、vue/vue3-recommended
    以vue/vue3-recommended为例, 扩展配置如 extends: [‘plugin:vue/recommended’]

  • 配置属于自己的html格式化规则

module.exports = {
  root: true,
  parser: "vue-eslint-parser",
  parserOptions: {
    parser: 'babel-eslint',
    sourceType: 'module'
  },
  env: {
    browser: true,
  },
  // https://github.com/standard/standard/blob/master/docs/RULES-en.md
  extends: ['plugin:vue/recommended', 'standard'],
  plugins: [
    "vue"
  ],
  // add your custom rules here
  'rules': {
    // allow debugger during development
    'no-debugger': (process.env.NODE_ENV === 'production' || process.env.NODE_ENV === 'productionECSO') ? 2 : 0,

    /*  *************   eslint-plugin-vue  ————  Strongly Recommended    *****************  */

    // 自定义组件-属性名称-连接符
    // <MyComponent my-prop="prop" />    <-----        <MyComponent myProp="prop" />
    "vue/attribute-hyphenation": 0,

    // 自定义组件名称 - 驼峰和连字符
    "vue/component-definition-name-casing": 0,

    // html 闭括号-换行
    "vue/html-closing-bracket-newline": [2, {
      "singleline": "never",
      "multiline": "always"
    }],

    // html 闭括号之前无空格
    "vue/html-closing-bracket-spacing": 2,

    // html 需要有结束标签,除了自闭合标签
    "vue/html-end-tags": 2,

    // 缩进
    "vue/html-indent": 2,

    // 属性-引用-默认使用双引号
    "vue/html-quotes": 0,

    // 自闭合标签只能写成这种形式  ---->   <YourComponent/>
    "vue/html-self-closing": 2,

    // 标签里面每行属性的个数--默认为1
    "vue/max-attributes-per-line": [2, {
      "singleline": 4,
      "multiline": 4
    }],

   // 内容元素为多行,对称换行
   "vue/multiline-html-element-content-newline": 0,
   // 内容元素为一行,换行
   "vue/singleline-html-element-content-newline": 0,

    // “Mustache”语法 (双大括号) 必须有前后对称的空格
    "vue/mustache-interpolation-spacing": 0,

    // 标签里面不允许多余空格
    "vue/no-multi-spaces": 2,

    // 标签内--属性赋值--等号两边不允许空格
    "vue/no-spaces-around-equal-signs-in-attribute": 0,

    // v-for指令变量命名不允许歧义,比如:变量命令为l
    "vue/no-template-shadow": 0,

    // 一个文件导出一个组件
    "vue/one-component-per-file": 0,

    // props 接收的属性名称为驼峰形式
    "vue/prop-name-casing": 0,

    // props中如果没有required,则需要提供默认属性default
    "vue/require-default-prop": 0,

    // props 属性需要声明类型type
    "vue/require-prop-types": 0,

    // 默认使用冒号:,而不是v-bind:
    "vue/v-bind-style": 2,

    // 默认使用冒号@,而不是v-on:
    "vue/v-on-style": 2,

    // 默认使用冒号#,而不是v-slot:
    "vue/v-slot-style": 0,

    /*  *************   eslint-plugin-vue  ————  Recommended    *****************  */

    // 标签里面的属性--顺序
    "vue/attributes-order": 0,

    // <script>, <template> & <style> 标签顺序,默认: [["script", "template"], "style"]
    "vue/component-tags-order": 0,

    // <template>标签中要有指令
    "vue/no-lone-template": 0,

    // 不允许使用v-html指令
    "vue/no-v-html": 0,

    // 绑定在 <slot> 的元素 ———— 插槽prop只能有一个参数
    "vue/no-multiple-slot-args": 0,

    // 组件声明属性的顺序 ———— 默认顺序:name、components、props、data、computed、watch、methods
    "vue/order-in-components": 0,

    // this 不允许出现在template中
    "vue/this-in-template": 2,

    /*  *************   eslint-plugin-vue  ————  Deprecated(已废弃)    *****************  */
    // name属性默认使用PascalCase帕斯卡命名法—— 首字母大写,比如  name: 'MyComponent'
    "vue/name-property-casing": 0,

    /*  *************   eslint-plugin-vue  ————  Essential    *****************  */

    // props --  Array 或 Object,default属性是个函数
    "vue/require-valid-default-prop": 2,

    /*  *************   新增 eslint 规则   *****************  */

    // 文件末尾保留一行空行
    'eol-last': 2,
    // 禁用行尾空白
    'no-trailing-spaces': 2,
    // 不允许多个空行
    'no-multiple-empty-lines': 2
  }
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Visual Studio Code (VSCode) 中,Vue.js 代码格式化通常不是内置的,但你可以安装第三方插件来实现这一功能。Vue官方推荐的插件是 `Prettier` 和 `vetur` 组合,它们提供了 Vue.js 的代码格式化支持。 要设置 Vue.js 的代码格式化快捷键,你需要按照以下步骤操作: 1. 安装插件:打开VSCode的命令面板(可以通过 `Ctrl+Shift+P` 或 `Cmd+Shift+P` 快捷键),搜索并安装 "Prettier" 和 "vetur" 插件。 2. 配置格式化:在设置文件 (`settings.json`) 中添加或编辑以下内容: ```json { "editor.formatOnSave": true, // 自动格式化保存文件 "vetur.format.defaultFormatter.html": "prettier", // 设置HTML预处理器为Prettier "vetur.format.defaultFormatter.js": "prettier", // 设置JS预处理器为Prettier "vetur.format.defaultFormatter.vue": "prettier", // 设置Vue预处理器为Prettier } ``` 3. 设置快捷键:你可以在 `"keybindings.json"` 文件中自定义快捷键。例如,设置格式化代码的快捷键: ```json { "key": "cmd+k,cmd+i", // Mac "mac": "cmd+k,cmd+i", "command": "editor.action.formatDocument", "when": "editorTextFocus && extensionKind === 'web'" } ``` 这里假设你想要使用 `Command + K, Command + I` 进行格式化,`extensionKind === 'web'` 确保只有在处理Vue项目时触发格式化。 相关问题: 1. 如何在VSCode中安装插件? 2. 我如何找到和编辑VSCode的设置文件? 3. 如何查看已安装的快捷键映射?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值