在Vuejs类组件中声明打字稿接口道具

问题描述 投票:4回答:3

我正在寻找在Vuejs类Component中声明一个Typescript接口Props的方法,就像我们可以对React Component一样。

看起来像这样:

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

export class Props extends Vue
{
  classElement :string
}

@Component
export default class Menu extends Vue<Props>
{
    public props :Props;

    constructor(props)
    {
        super(props);
        console.log(props); // return undefined 
    }

    mounted()
    {
      console.log(this.props.classElement); // return undefined
    }
}

有没有办法实现这一目标?

typescript vue.js interface
3个回答
8
投票

1
投票
@Component({ props: { classElement: String } }) export default class Menu extends Vue { mounted() { console.log(this.classElement); } }

因为组件接受一个对象,所以您可以为此对象定义一个接口并将其传递给它。

或者,您也可以将vue-property-decorator用于更类似角度的语法。


0
投票
© www.soinside.com 2019 - 2024. All rights reserved.