满口金牙 2022-11-16 04:42 采纳率: 90.4%
浏览 3
已结题

怎么向vue的子组件,传递一个 ts type数据类型

<template>
<ChildrenVue />  // 子组件


</template>
<script lang='ts'>
interface DataType {
  key: string,
  title: string,
}



<script/>

现在我要向子组件ChildrenVue ,传递DataType 这个数据类型怎么操作?

  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2022-11-16 09:20
    关注

    productItem is declared as a local data variable, which is not exposed as a public prop. The component template thus refers only to the local data variable, so it shows the default value of productItem.title (an empty string).

    You could either move that to @Options under props:

    
    import { PropType } from 'vue';
    import { Vue, Options } from 'vue-class-component';
    
    @Options({
      props: {
        productItem: {
          type: Object as PropType<ProductItem>,
          default: () => ({
            id: 0,
            title: '',
            description: '',
            product_type: '',
            image_tag: '',
            created_at: 2000,
            owner: '',
            owner_photo: '',
            email: '',
            price: 0.0
          })
        }
      }
    })
    export default class ProductItemView extends Vue {
    }
    
    

    参考:

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月25日
  • 已采纳回答 11月17日
  • 创建了问题 11月16日