编译Vue项目时遇解析错误:组件名Header需为多词格式
解决Vue编译报错:Component name "Header" should always be multi-word
这个错误是ESLint的vue/multi-word-component-names规则触发的,Vue官方规范要求组件名称使用多词格式,避免与HTML原生标签(比如原生<header>标签)冲突。以下是几种解决方式:
重命名组件(推荐)
将单词组件名改为多词格式,比如把Header.vue重命名为AppHeader.vue,同时同步修改组件内部的name选项:<script> export default { name: 'AppHeader' } </script>全局禁用ESLint规则
找到项目根目录的.eslintrc.js(或.eslintrc.json),在rules中关闭该规则:module.exports = { // 其他配置项 rules: { 'vue/multi-word-component-names': 'off' } }若使用Vue CLI创建项目,也可在
vue.config.js中配置:const { defineConfig } = require('@vue/cli-service') module.exports = defineConfig({ eslint: { rules: { 'vue/multi-word-component-names': 'off' } } })单个组件禁用规则
在需要忽略的组件文件顶部添加注释,仅对该组件关闭规则:<!-- eslint-disable vue/multi-word-component-names --> <template> <!-- 组件内容 --> </template>
报错截图:
内容的提问来源于stack exchange,提问作者Fahmedo
相关产品推荐
相关产品推荐

