• Vue3——网站整体布局、用户动态页面(下)


    导航栏组件

    到现在为止,发现访问每个页面还需要在地址栏url修改;
    打开导航栏NavBar.vue
    在这里插入图片描述
    修改成如下,发现每点击一个导航栏刷新url地址,重新请求服务器,这不叫做前端渲染
    在这里插入图片描述
    添加一个属性标签 代替href a标签;
    在这里插入图片描述
    home是在router中设置的名称。

    技巧:按住alt键,同点击光标可以同时修改多个标签a
    acwing编辑器是按爪ctrl同时打字母

    <template>
        <nav class="navbar navbar-expand-lg navbar-light bg-light">
            <!-- -fluid去掉会偏向中间一些,导航栏 -->
            <div class="container">
                <router-link class="navbar-brand " :to="{ name: 'home', params: {} }">MySpace</router-link>
                <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarText"
                    aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation">
                    <span class="navbar-toggler-icon"></span>
                </button>
                <div class="collapse navbar-collapse" id="navbarText">
                    <ul class="navbar-nav me-auto mb-2 mb-lg-0">
                        <li class="nav-item">
                            <router-link class="nav-link" :to="{ name: 'home', params: {} }">首页</router-link>
                        </li>
                        <li class="nav-item">
                            <router-link class="nav-link" :to="{ name: 'userlist', params: {} }">好友列表
                            </router-link>
                        </li>
                        <li class="nav-item">
                            <router-link class="nav-link" :to="{ name: 'uerprofile', params: {} }">用户动态
                            </router-link>
                        </li>
                    </ul>
    
                    <ul class="navbar-nav ">
    
                        <li class="nav-item">
                            <router-link class="nav-link" :to="{ name: 'login', params: {} }">登录</router-link>
                        </li>
                        <li class="nav-item">
                            <router-link class="nav-link" :to="{ name: 'register', params: {} }">注册
                            </router-link>
                        </li>
                    </ul>
    
    
                </div>
            </div>
        </nav>
    </template>
    
    <script>
    export default {
        name: "NavBar",
    }
    </script>
    
    <style scoped>
    </style>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    现在点击导航栏,url地址没有变化,这就完成了前端渲染

    在这里插入图片描述

    学会使用f12开发者工具看错误
    这就写完了路由;

    用户动态页面

    页面比较复杂,使用三个组件模块来实现
    可以使用bootstrap的grid system
    url: https://v5.bootcss.com/docs/5.1/layout/grid/
    在这里插入图片描述
    按照这个布局模仿着写;
    因为contenbase里面定义了container,不用再重写
    在这里插入图片描述
    在这里插入图片描述
    https://profile-avatar.csdnimg.cn/3d6ab8b711d34faf96b0a3b57ec1021b_qq_36288669.jpg!3
    头像太大,bootstrap搜索image

    在这里插入图片描述
    在这里插入图片描述
    按钮也是有样式的在bootsrap; Button

    在这里插入图片描述

    用户动态列表

    userProfilePost.vue
    添加到UserProfileVie.vue
    在这里插入图片描述
    vue 在不同组件传递信息是类似于react

    在这里插入图片描述

    关注按钮

    按钮当成立的时候显示出来,不成立的时候隐藏掉
    在这里插入图片描述在这里插入图片描述
    绑定函数 1:25:00
    ~暂停

  • 相关阅读:
    【python基础题】——程序题(一)
    【Python】如何把一个文件夹中的所有py文件移动到另一个文件夹中?如何把txt文件每一行的内容写入一个列表中?关于系统进程和用户进程的系统监视信息的解读
    MVC第三波书店图书类型获取和实现下拉框功能
    AI:129-基于深度学习的极端天气事件预警
    武汉智能网联道路智能化建设规范
    cmake入门
    Mybatis中延迟加载~
    5分钟——快速搭建后端springboot项目
    再理解springboot那些注册与回调、监控与统计等命名规范,就可以读懂70%的springboot源代码
    Java中线程等待和线程阻塞的区别?
  • 原文地址:https://blog.csdn.net/qq_36288669/article/details/125834079