--- title: 实现一个返回页面顶部的 Vue3 组件 created: 2022-06-10 summary: 结合流畅的动画平滑滚动到页面顶部 tags: - Vue3 - BootStrap --- 主要参考:[Simple Vue.js and Tailwind.css Scroll To Top Button | Adam Bailey](https://adambailey.io/blog/scroll-to-top-button-vue/) CSS 库:[Bootstrap V5.2](https://getbootstrap.com/docs/5.2/getting-started/introduction/) - 按钮的布局方式为 sticky - 因为可能需要频繁切换显示状态,所以用`v-show` 而不是 `v-if`来控制按钮可见性 - 使用 Vue 中内置的``组件实现状态之间的平滑过渡 ```vue title="BackToTop.vue" ``` ```html title="to-top.min.svg" ``` 其他参考/实现方式: - [vue 返回顶部的组件 BackTop](https://blog.csdn.net/m0_46217225/article/details/117933815) - [vue-simple-scroll-up/ScrollToTop.vue · GitHub](https://github.com/asdf1899/vue-simple-scroll-up/blob/master/src/ScrollToTop.vue) - [Vue.js - Scroll Back To Top Button Without Library](https://codepen.io/webty_mizusawa/pen/QWLMeqE) - [Vue3 从 0 到 1 组件开发-基础组件:BackTop 回顶 - 掘金](https://juejin.cn/post/6993729338843594783) - [vue 相同路径刷新怎么回到顶部 - 掘金](https://juejin.cn/post/6873264845915947016) 题外话:||BootStrap 的文档写得好烂||