我有一个非常简单的应用程序,它有两个组件:App.vue
和另一个组件,Home.vue
,我在其中保存应用程序的其余 struct :一个粘性标题和一些带有可滚动到的锚的部分.
我想对粘性标题应用一个类,以便在页面滚动时最小化徽标.所以我想我会留意window.scrollY
的变化.因此,如果scrollY
大于0,则应用一些最小化徽标的类.
我试着在我的组件中听滚动事件,但没有走多远.在这里的讨论中,提供了一个非常好的解决方案,但我不知道将滚动事件放在哪里.https://github.com/vuejs/Discussion/issues/324
所以,我认为最合适的解决方案是创建一个数据属性,将其指定为window.scrollY
位数,然后观察其值的变化.不幸的是,观察者从未被触发.所以现在我被困住了.代码是:
data () {
return {
...
windowTop: window.top.scrollY
}
}
...
watch: {
windowTop: {
immediate: true,
handler (newVal, oldVal) {
console.log(newVal, oldVal);
},
}
}
你知道我可能做错了什么吗?