This is what I write in my component:
A navigation bar
<p class="navbar" v-show="showNavbar">
//js
import Bus from '../../common/js/bus'
export default {
data () {
return {
showNavbar: true
}
},
created () {
Bus.$on('hideNavbar', function (h) {
if (h === 1) {
this.showNavbar = true
} else if (h === 2) {
this.showNavbar = false
console.log('false')
}
})
I hope to monitor the status of hideNavbar through Bus.$on, but the browser console reports that showNavbar is not defined
Is there something wrong?
Try using the arrow function. It should be that the current this is not assigned to the current vue example