【Vue】在vue中命名的时候会遇到 component name “index” should always be multi-word的解决方案
文章目录
1. 报错代码
使用脚手架创建一个新的项目后,在给组件下的文件取名为index.vue
后,第一行飘红,提示信息如下:翻译过来的意思就是组件名要以多个单词组件
Component name "index" should always be multi-word
2. 解决方案
2.1 第一种方法 直接改名
修改组件名为多个单词,使用驼峰命名方式或者用-
连接单词。但是有时候我们会因为个别原因不能改名,那么可以采用下面的方法。
2.2 第二种方法 关闭检验
在根目录下找到vue.config.js
文件(如果没有则新建一个),添加下面的代码
添加后文件示例:
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
transpileDependencies: true,
// 添加此行代码
lintOnSave:false
})
2.3 第三种方法 关闭命名规则校验
在根目录下找到 .eslintrc.js
文件,同样如果没有则新建一个(注意文件前有个点),代码如下:
module.exports = {
root: true,
env: {
node: true
},
'extends': [
'plugin:vue/essential',
'eslint:recommended'
],
parserOptions: {
parser: '@babel/eslint-parser'
},
rules: {
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
//在rules中添加自定义规则
//关闭组件命名规则
"vue/multi-word-component-names":"off",
},
overrides: [
{
files: [
'**/__tests__/*.{j,t}s?(x)',
'**/tests/unit/**/*.spec.{j,t}s?(x)'
],
env: {
jest: true
}
}
]
}
2.4 第四种方法 官方建议的设置
官方建议设置是根据组件名进行忽略个别组件名
例如:忽略index,main
module.exports = {
root: true,
env: {
node: true
},
'extends': [
'plugin:vue/essential',
'eslint:recommended'
],
parserOptions: {
parser: '@babel/eslint-parser'
},
rules: {
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
//在rules中添加自定义规则
// 添加组件命名忽略规则
"vue/multi-word-component-names": ["error",{
"ignores": ["index","main"]//需要忽略的组件名
}]
},
overrides: [
{
files: [
'**/__tests__/*.{j,t}s?(x)',
'**/tests/unit/**/*.spec.{j,t}s?(x)'
],
env: {
jest: true
}
}
]
}
总结
以上就是今天要讲的内容,希望对大家有所帮助!!!