分析代码: <div class="header"> <div style="display: flex; align-items: center; margin-top: 2px"> <el-avatar size="large" :src="userInfo !== null ? userInfo['headImg'] : logo" style="margin: 0 6px" > </el-avatar> <span style="color: #888">Hi~欢迎逛商城!</span> </div> <div> <!-- <template v-if="userInfo === null"> --> <template v-if="userInfo === null"> <el-link @click="toPage('/PC/login?isLogin=true')"> 登录 </el-link> <span class="div"> | </span> <el-link @click="toPage('/PC/login?isLogin=false')">注册</el-link> </template> <template v-else> <el-link :underline="false">{{ sayHello }}(*^▽^*)</el-link> </template> </div> <div style="margin: 4px 0 0"> <el-button type="danger" round size="small">新人福利</el-button> <el-button type="warning" round size="small">PLUS会员</el-button> </div> </div>
时间: 2024-01-03 22:23:27 浏览: 74
简单的网页制作案例(DIV+CSS完成):建筑类
这段代码是一个 Vue 组件的模板部分,用于渲染一个头部导航栏。其中包含一个头像、一个问候语、两个按钮。具体分析如下:
1. 头像部分使用了 Element-UI 的 `el-avatar` 组件,根据 `:src` 属性动态绑定头像的图片地址,如果 `userInfo` 不为 `null` 则使用 `userInfo['headImg']`,否则使用 `logo`。
2. 问候语使用 `span` 标签展示,文本内容为 "Hi~欢迎逛商城!"。
3. 登录注册按钮部分使用了 Vue 的条件渲染语句 `v-if` 和 `v-else`,根据 `userInfo` 是否为 `null` 显示不同的内容。如果 `userInfo` 为 `null`,则显示 "登录" 和 "注册" 两个链接,点击链接会触发 `toPage` 方法跳转到对应的页面;否则显示 `sayHello` 属性的值,以及一个无下划线的链接。
4. 最后一个 `div` 中包含两个按钮,分别使用 `el-button` 组件渲染。按钮的样式和文本内容分别为 "新人福利" 和 "PLUS会员"。
阅读全文