使用vue-property-decorator时注册本地组件

时间:2019-08-09 22:58:44

标签: typescript vue.js

仅使用基于类的组件学习Vue和TypeScript,我的单个文件组件如下所示:

<template>
    ...
    <div>
        <contact-component v-bind:key="c.id" v-for="c in contacts">
        </contact-component>
    </div>
</template>

<script lang="ts">
import ContactComponent from "./Contact.vue";
import { Component, Vue } from 'vue-property-decorator'

@Component
export default class ContactsComponent extends Vue {
    data() {...}
    components = { ContactComponent }
}
</script>

它会产生以下错误:

  

未知的自定义元素:-您是否注册了   组件正确?

很明显,我对该组件的注册不起作用,但是我不知道如何在TypeScript中解决此问题。注册ContactComponent以便可以在上面的模板中使用的正确方法是什么?

1 个答案:

答案 0 :(得分:5)

像这样


@Component({
  components: { ContactComponent }
})
export default class ContactsComponent extends Vue {}