Vue и TypeScript требуется реквизит - PullRequest
4 голосов
/ 28 июня 2019

Я добавил обязательную опору в свой класс компонентов, используя vue-property-decorator, но когда я попытался использовать компонент без опоры, я не увидел никаких ошибок консоли, которые указывают на отсутствие необходимой опоры. Почему?

export default class Test extends Vue {
  @Prop() private message!: string;
}

Следующий код не выдает ошибок, как ожидалось:

<test message="Hello" />

Следующий код должен привести к ошибке, но не:

<test />

1 Ответ

4 голосов
/ 28 июня 2019

Декоратор @Prop принимает объект PropOptions, который содержит свойство required со значением по умолчанию false. Чтобы сделать message обязательным, укажите required: true в своем объявлении @Prop:

@Prop({ required: true }) private message!: string;

Edit Vue Template

...