VueJS未知自定义元素,在单个文件组件中带有嵌套模板

mar*_*llo 3 vue.js vue-component vuejs2

我有一个vue的嵌套结构:

<app>
  <column> : [array]
    <task> : [array]
      <resource> : [array]
Run Code Online (Sandbox Code Playgroud)

我也在使用单个文件组件。对于<app>组件,它看起来像这样(/App.vue文件)

<template>
  <div id="app">
     <column v-for=""></column>
  </div>
</template>

<script>
  import column from './components/Column'

  export default {
    name: 'project',
    components: {
      column
    },  
    data () {
      return {

      }
    }
  }
</script>
Run Code Online (Sandbox Code Playgroud)

所述<column>组分(/components/Column.vue文件):

<template>
  <div>
      <task v-for=""></task>
  </div>
</template>

<script>
  import task from './Task'

  export default {
    name: 'column',
    components: {
      task
    },
    data () {
      return {

      }
    }
  }
</script>
Run Code Online (Sandbox Code Playgroud)

所述<task>组分(/components/Task.vue文件):

<template>
  <div>
      <resources></resources>
  </div>
</template>

<script>
  import { resources } from './Init-resource'

  export default {
    name: 'task',
    components: {
      resources
    },
    data () {
      return {

      }
    }
  }
</script>
Run Code Online (Sandbox Code Playgroud)

到现在为止,一切都可以正常工作。该应用程序呈现一堆列,并在列内部呈现任务。但是接着是另一层<resource>,看起来像这样(/components/Init-resource.vue文件):

<template>
  <div>
    <select>
      <option v-for=""></option>
    </select>
  </div>
</template>

<script>
  export default {
    name: 'resources',
    data () {
      return {

      }
    }
  }
</script>
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

vue.common.js?e881:509 [Vue warn]: Unknown custom element: <resources> - did you register the component correctly? For recursive components, make sure to provide the "name" option. 
(found in component <task>
Run Code Online (Sandbox Code Playgroud)

它无法识别最后一个<resource>组件。但是一切看起来都很好,导入是正确的,为模板返回了组件...

mar*_*llo 5

我找到了。我使用命名导入,所以代替了这个:

import { resources } from './Init-resource'
Run Code Online (Sandbox Code Playgroud)

应该是这样的:

import resources from './Init-resource'
Run Code Online (Sandbox Code Playgroud)