Привязки стилей компонента Vue Class / условное отображение не реагируют на изменение значения поля

Я использую компоненты на основе классов, используя Typescript, Vue и эту библиотеку: https://github.com/vuejs/vue-class-component

Однако я сталкиваюсь с проблемой использования привязок стилей и условного рендеринга с использованием v-if директива: они, кажется, не реагируют, когда переменная поля класса изменяется. Рассмотрим этот пример:


<template>
    <button :class="[showMonthlyView ? '' : 'button-active']" @click="showMonthlyView = true">Monthly weather</button>
    <monthly-weather v-if="showMonthlyView" />
</template>

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

@Component({
    components: {
        monthlyWeather
    }
})

export default class MyComponent extends Vue {
    showMonthlyView: boolean = false;

};

</script>

Когда кнопка нажата, значение showMonthlyView должен измениться на true и компонент monthly-weather покажи себя и свой класс button-active быть применены к кнопке. Однако изменяется только значение поля (я проверял это).

Как заставить условный рендеринг / привязки стилей работать с использованием компонентов на основе классов?

0 ответов

Другие вопросы по тегам