Vue prop инициализация / мутация - PullRequest
0 голосов
/ 02 декабря 2018

У меня есть следующий код:

export default class LayoutComponent extends Vue {  
    @Prop() whiteBg: boolean;   
    ...
}

, но когда я скомпилирую его, я получаю:

свойство 'whiteBg' не имеет инициализатора и не определено в конструкторе

Поэтому я пытаюсь исправить это следующим образом:

export default class LayoutComponent extends Vue {  
    @Prop() whiteBg: boolean = true;    
    ...
}

Но затем в консоли Chrome я получаю сообщение об ошибке:

Избегайте мутации опоры напрямую, так какзначение будет перезаписано всякий раз, когда родительский компонент повторно отображает

и Layout "игнорирует" значение whiteBg, установленное в родительском компоненте, который его использует.

Вопрос : Чтоделать?

Ответы [ 2 ]

0 голосов
/ 15 марта 2019

Или используйте следующее

export default class LayoutComponent extends Vue {
    @Prop({ default: true }) whiteBg: boolean;
    ...
}

https://github.com/kaorun343/vue-property-decorator

0 голосов
/ 02 декабря 2018

Используйте следующий код

export default class LayoutComponent extends Vue {  
    @Prop() whiteBg!: boolean;      
    ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...