Vue.js 模糊错误表示我的组件名称以零开头

Vue.js 模糊错误表示我的组件名称以零开头,vue.js,vuejs2,Vue.js,Vuejs2,我得到一个模糊的错误,我的组件名是零。但是我的组件没有一个名称是零。这个错误很难找到。任何人都知道问题可能是什么,所以我可以朝着正确的方向去解决它 vendor.js:66537[Vue warn]:无效的组件名称:“0”。组件名称只能包含字母数字字符和连字符,并且必须以字母开头 以下是有关错误的更多信息: 编辑:更多信息: 我有一个独特的项目结构。我有单文件组件。每个组件分为两个文件,如下所示: Home.vue: <template> ... </template

我得到一个模糊的错误,我的组件名是零。但是我的组件没有一个名称是零。这个错误很难找到。任何人都知道问题可能是什么,所以我可以朝着正确的方向去解决它

vendor.js:66537[Vue warn]:无效的组件名称:“0”。组件名称只能包含字母数字字符和连字符,并且必须以字母开头

以下是有关错误的更多信息:

编辑:更多信息:

我有一个独特的项目结构。我有单文件组件。每个组件分为两个文件,如下所示:

Home.vue:

<template>
    ...
</template>

<style lang="scss">
    ...
</style>

<script src="./home.js"></script>
编辑:调试捕获

编辑:home.js

import RecentPostsWidget from './widgets/RecentPosts'
import PagesWidget from './widgets/Pages'

export default {
    components: {
        RecentPostsWidget,
        PagesWidget
    }
}

您可以尝试向组件添加名称吗

home.js

import RecentPostsWidget from './widgets/RecentPosts'
import PagesWidget from './widgets/Pages'

export default {
    name: 'p-components-home',
    components: {
        RecentPostsWidget,
        PagesWidget
    }
}

您需要在导入组件的末尾添加
.vue

import RecentPostsWidget from './widgets/RecentPosts.vue'
import PagesWidget from './widgets/Pages.vue'

export default {
    components: {
        RecentPostsWidget,
        PagesWidget
    }
}
试着替换

components: {
    RecentPostsWidget,
    PagesWidget
}


我也有同样的错误,它是由组件中使用数组而不是对象引起的。 应该是这样的

components: {
  RecentPostsWidget,
  PagesWidget
}
当错误出现时,我就是这样做的:

components: [
  RecentPostsWidget,
  PagesWidget
]

我笨得把我的组件命名为

导出默认值{
组件:“页脚”,
}
而不是:

导出默认值{
名称:'页脚',
}

能否在
validateComponentName
中放置一个断点,以查看它如何查看您的模块?@raina77ow我添加了一个屏幕截图。错误发生在路由器视图上。我们可以查看home.js的内容吗?@Borjante请查看我的编辑:)可疑,没有定义名称。让我们尝试添加一个名称是否总是必需的?我不确定,我确定的是这是一个最佳实践。是的,不幸的是,当我添加一个名称时,同样的错误发生了,现在只是为了调试目的。如果将home.js的内容放在home.vue模板文件中并删除对home.js文件的引用,会发生什么情况?我的问题是名称字符串中有一个空格。太棒了!这个答案应该被设置为正确答案。这对我来说也很有效。
components: {
  RecentPostsWidget,
  PagesWidget
}
components: [
  RecentPostsWidget,
  PagesWidget
]