首页 > 解决方案 > 更改 VueJS 组件的类

问题描述

我想在 2.5 秒后更改 VueJS 中组件的类,我正在使用以下代码:

const Header = {
  template: `<header :class=hclass v-html="header"></header>`,
  data () {
   return {
     hclass: 'off'
   }
  },
  methods: {
    changeVisibility () {
      window.setTimeout(function () {
        this.hclass = 'on'
        console.log('Change to on!', this.hclass)
      }, 2500)
    }
  },
  computed: {
    header () {
      this.changeVisibility()
      return store.state.header
    }
  }
}

虽然我在控制台中看到它说“更改为开启!”,但它实际上从未用“开启”更新我的课程!

标签: javascriptvue.jsvuejs2vue-component

解决方案


感谢您指出正确的方向!

methods: {
    changeVisibility () {
        setTimeout(function () {
            this.hclass = true
            console.log('Change to on!', this.hclass)
        }.bind(this), 5000)
    }
}

推荐阅读