- 创建分支
detail -header并拉到线下,在Detail组件中引用。 - 想要页面能够滚动,得有足够的长度:
- 打开
Header.vue进行具体的编码,加入返回图标iconfont:
效果:
实现功能:点击返回图标的时候,会返回到首页:
固定导航栏:
- 逻辑区块:
定义一个变量来控制显示还是隐藏:
现在页面上导航栏被隐藏起来了:
因为我们用了keepalive,所以页面一旦被展示,activated这个钩子就会执行,在activated中定义一个事件监听方法,并在methods中定义绑定的事件scroll,一旦他被执行的时候,对应的this.handleScroll事件会被执行,滚动的同时会输出被卷去的高度:
实现渐隐渐现的效果,绑定动态的style,并且和opacityStyle做一个关联,默认它的opacity值为0:
要在60到281像素之间做一个渐变:
- 提交到线上
- 对全局事件的解绑
- 在
Header.vue中,
考虑一种情况:在handleScroll事件中输出scroll:
当我们滚动详情页时,会不断的输出scroll:
返回到首页,当我们在首页进行滚动时,也会不断输出scroll,这是因为我们在全局的window对象上定义了这个事件。与生命周期函数activated对应的还有另外一个生命周期函数deactivated,页面即将被隐藏或是页面即将被替换成新的页面之后执行。即页面展示的时候,绑定这个事件,页面隐藏的时候进行解绑:
这样就不会出现刚才同样作用在首页滚动的情况上了。首页不会受详情页面的任何影响了。然后提交到之前的分支上。