tips: 不要在手机上使用fixed
    用flex布局
    如果多个页面有相同的HTML结构和CSS样式,
    新建一个Layout组件,把相同的HTML和CSS样式都放Layout组件里
    其他页面内容用slot引入

    1. <template>
    2. <div class="nav-wrapper">
    3. <div class="content">
    4. <slot />
    5. </div>
    6. <Nav />
    7. </div>
    8. </template>
    9. <script lang="ts">
    10. export default {
    11. name: "Layout"
    12. }
    13. </script>
    14. <style lang="scss" scoped>
    15. .nav-wrapper {
    16. display: flex;
    17. flex-direction: column;
    18. border: 1px solid red;
    19. height: 100vh;
    20. }
    21. .content {
    22. border: 1px solid green;
    23. flex-grow: 1;
    24. overflow: auto;
    25. }
    26. </style>

    其他页面

    1. <template>
    2. <Layout>
    3. money.vue
    4. </Layout>
    5. </template>
    6. <script lang="ts">
    7. export default {
    8. name: "Money",
    9. }
    10. </script>
    11. <style lang="scss" scoped>
    12. </style>