使用Vue类样式组件的递归组件

时间:2020-04-27 11:22:08

标签: typescript vue.js

我正在使用带有vue-property-decorator插件的类样式组件。 我如何才能具有递归组件并本身使用组件。 我的代码如下:

<template>
<ul>
    <li>
        <div>
            {{nodeData.someData}}
        </div>
    </li>
    <li>
        <TreeNode
        v-for="item in nodeData.children"
        :key="item.id"
        ></TreeNode>
    </li>
</ul>
</template>

<script lang="ts">

import {Vue, Prop, Component, Watch} from 'vue-property-decorator';

@Component({
//error :'TreeNode' was used before it was defined.
   components:{TreeNode}
})
export default class TreeNode extends Vue {

   @Prop() nodeData?: myType;

}

</script>

在组件中使用TreeNode选项会导致错误:在定义“ TreeNode”之前已使用它。 我该如何解决?或替代方法是什么?

1 个答案:

答案 0 :(得分:0)

不需要:

components:{TreeNode}

只需将其删除,一切都会正常!