Vue实战第4章:主页设计之中部内容设计

news2024/9/30 7:17:36
前言
本篇在讲什么

接上篇文章,我们制作了一个自定义的网页导航栏,本篇文章我们简单制作一个内容页
仅介绍简单的应用,仅供参考

本篇适合什么

适合初学Vue的小白
适合想要自己搭建网站的新手
适合没有接触过vue-router的前端程序

本篇需要什么

Htmlcss语法有简单认知
Vue有简单认知
Node.js(博主v18.13.0)的开发环境
Npm(博主v8.19.3)的开发环境
Vue(博主v5.0.8)的开发环境
依赖VS code编辑器

本篇的特色

具有全流程的图文教学
重实践,轻理论,快速上手
提供全流程的源码内容

♠ 内容概要

内容页包含以下几项

  • 页面中部显示头像
  • 头像下方补充主题
  • 主题下方补充描述
  • 描述下方补充跳转按钮

完整效果如下图所示

在这里插入图片描述


♠ 修改App.vue

在上一章导航栏的基础上,我们需要稍微修改以下App.vue的内容

♥ 展示背景

我们想要在单调的背景上展示一些动态的效果,这里直接偷懒把Vue官方的动态背景拿来了,下面直接看代码

</script>

<style>
#app{
  text-align: center;
  background-image: url("./assets/bg.svg");
}

</style>

在这里插入图片描述

直接在css里面添加字段background-image,后边接背景的资源路径


♥ router-view

我们在之前讲过路由相关的内容,这里也是直接通过路由来渲染页面,所以需要添加router-view组件,这里直接到导航栏下方

<template>
  <div class="main">
    <NavBar/>
    <router-view></router-view>
</div>
</template>

♠ 新增Home页

正文开始了,我们先创建一个HomeView.vue的文件,用来显示我们中间的内容

在这里插入图片描述


♥ 定义路由内容

新增的页面,我们需要在路由里去做定义,修改router目录下的index.js文件

在这里插入图片描述

import {createRouter, createWebHistory} from 'vue-router'
import HomeView from "../components/HomeView.vue"

const routes = [
    {
        name: 'home',
        path: '/home',
        component: HomeView,
    },
];

const router = createRouter({
    history: createWebHistory(), 
    routes,
})

export default router

上述是完整的index.js的代码,我们引用了HomeView.vue文件,并且在路由内对其进行了定义,重定向为/home


♥ 设置初始页面

我们希望router-view在初始的时候就可以直接显示主页,所以需要在路由内对\根路径做出重定向,使其指向主页

import {createRouter, createWebHistory} from 'vue-router'
import HomeView from "../components/HomeView.vue"

const routes = [
    {
        path: '/',
        redirect:'/home'
    },
    {
        name: 'home',
        path: '/home',
        component: HomeView,
    },
];

const router = createRouter({
    history: createWebHistory(), 
    routes,
})

export default router

如此写法router-view在初始渲染的时候会去加载/home的页面


♥ 添加头像

我们在HomeView.vue内补充头像的显示

<img src="../assets/main.png" class="img_main">

♥ 添加文本

<p class="txt_main">
    Welcome to Sun'home
</p>
<p class="txt_dec">
    限定目的,能使人生变得简洁。 ——村上春树 《没有色彩的多崎作和他的巡礼之年》
</p>

我们希望欢迎语和描述语能够占据一整行的位置,所以这里使用了p标签来定义组件


♥ 添加跳转徽章

<a href="https://github.com/KingSun5" class="btn_badge">
    <img src="https://img.shields.io/badge/github-KingSun5-brightgreen.svg" alt="github" class="btn_badge">
</a>
<a href="https://blog.csdn.net/Mr_Sun88">
    <img src="https://img.shields.io/badge/csdn-%E5%BE%AE%E7%AC%91%E7%9A%84%E5%AD%99%E5%90%9B-red" alt="csdn" class="btn_badge">
</a>
<a href="//qzonestyle.gtimg.cn/qzone/hybrid/app/404">
    <img src="https://img.shields.io/badge/404-%E8%85%BE%E8%AE%AF%E5%85%AC%E7%9B%8A-orange" alt="404" class="btn_badge">
</a>

这里我们希望徽章能够展示在一行里,所以这里用上了a标签来定义

注:徽章制作网站传送门


♥ 完整代码

光定义肯定是不行的,这里我们在补一点点细节,补充一些CSS里的内容,我们看一下HomeView.vue的完整内容吧

<template>
    <main class="home">
        <header class="hero">
        <img src="../assets/main.png" class="img_main">
        <p class="txt_main">
            Welcome to Sun'home
        </p>
        <p class="txt_dec">
            限定目的,能使人生变得简洁。 ——村上春树 《没有色彩的多崎作和他的巡礼之年》
        </p>
        </header>
        <a href="https://github.com/KingSun5" class="btn_badge">
            <img src="https://img.shields.io/badge/github-KingSun5-brightgreen.svg" alt="github" class="btn_badge">
        </a>
        <a href="https://blog.csdn.net/Mr_Sun88">
            <img src="https://img.shields.io/badge/csdn-%E5%BE%AE%E7%AC%91%E7%9A%84%E5%AD%99%E5%90%9B-red" alt="csdn" class="btn_badge">
        </a>
        <a href="//qzonestyle.gtimg.cn/qzone/hybrid/app/404">
            <img src="https://img.shields.io/badge/404-%E8%85%BE%E8%AE%AF%E5%85%AC%E7%9B%8A-orange" alt="404" class="btn_badge">
        </a>
    </main>
</template>
  
<script>
    export default {
        name: "HomeView"
    }
</script>

<style>
    .home{
        height: 860px;
    }
    .txt_main{
        color:#2c2c2c;
        font-size: 30px;
        font-family:"Microsoft YaHei";
        margin-top: 20px;
        font-weight: bold;
    }
    .txt_dec{
        color:#2c2c2c;
        margin-top: 25px;
        font-size: 20px;
        font-family:"Microsoft YaHei";
    }
    .img_main{
        width: 280px;
        height: 280px;
        margin-top: 8%;
    } 
    .btn_badge{
        margin-left: 20px;
    }
</style>

♠ 推送

  • Github
https://github.com/KingSun5

♠ 结语

若是觉得博主的文章写的不错,不妨关注一下博主,点赞一下博文,另博主能力有限,若文中有出现什么错误的地方,欢迎各位评论指摘。

👉 本文属于原创文章,转载请评论留言,并在转载文章头部著名作者出处👈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/353308.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue常用指令及声明周期

文章目录知识点前端开发环境配置v-text && v-htmlv-if、v-else && v-showv-forv-onv-modelv-bind、v-cloak、v-pre&&v-once全局 API 是什么Vue.directive 自定义组件Vue.directive 是什么自定义组件回调函数参数自定义组件的生命周期Vue.set 全局操作为…

【Kafka】一.认识Kafka

kafka是一个分布式消息队列。由 Scala 开发的高性能跨语言分布式消息队列&#xff0c;单机吞吐量可以到达 10w 级&#xff0c;消息延迟在 ms 级。具有高性能、持久化、多副本备份、横向扩展能力。 生产者往队列里写消息&#xff0c;消费者从队列里取消息进行业务逻辑。 一般在…

Unity对接接口丨简单教学丨UnityWebRequest

新手制作接口对接前言使用过程Postman测试第一次测试第二次测试第三次测试第四次测试第五次测试第六次测试总结前言 提示&#xff1a;大体介绍今日功能介绍 介绍大概UnityWebRequest对接接口方式,博主也是作为刚开始对接口的使用&#xff0c;相当详细。 使用过程 这里为内容…

你知道IP属地是怎么来的?

在互联网高速发展的时代&#xff0c;登录网络使用网络的过程当中&#xff0c;会存在非常独特的IP属地&#xff0c;这个独特的概念就是在互联网不断发展过程当中&#xff0c;对于大家来说非常熟悉而又陌生的一个必要设备&#xff0c;在使用各种电子设备上网的时候&#xff0c;都…

Flutter For Web实践

1 什么是Flutter Flutter是Google开源的一套UI工具包&#xff0c;帮助开发者通过一套代码库高效构建多平台精美应用&#xff0c;支持移动APP、web、桌面和嵌入式平台。Flutter和其他的跨平台解决方案的实现方式上有比较大的差异。 我们以React Native&#xff08;下文简称RN&…

kubernetes教程 --组件详细介绍

组件详细介绍 NameSpace 在 Kubernetes 中&#xff0c;名字空间&#xff08;Namespace&#xff09; 提供一种机制&#xff0c;将同一集群中的资源划分为相互隔离的组。 同一名字空间内的资源名称要唯一&#xff0c;但跨名字空间时没有这个要求。 名字空间作用域仅针对带有名字…

STM32单片机初学8-SPI flash(W25Q128)数据读写

当使用单片机进行项目开发&#xff0c;涉及大量数据需要储存时&#xff08;例如使用了屏幕作为显示设备&#xff0c;常常需要存储图片、动画等数据&#xff09;&#xff0c;单靠单片机内部的Flash往往是不够用的。 如STM32F103系列&#xff0c;内部Flash最多只能达到512KByte&a…

git安装与学习1(CSDN_0010_202201014)

目录 1. Git下载 2. git安装 3. 生成并添加SSH公钥 3.1 生成公钥 3.2 添加公钥 4. 代码备份 4.1 创建远程仓库 4.2 创建本地仓库 1. Git下载 Git下载官网&#xff1a;Githttps://git-scm.com/ 详细的下载教程见&#xff1a; https://blog.csdn.net/weixin_47638941/ar…

CHAPTER 5 自动发现、自动注册、分布式监控、SNMP监控

自动发现与自动注册5.1 自动发现与自动注册5.1.1 简介5.1.2 两种模式5.2 自动发现--被动模式5.3 自动注册--主动模式5.4 分布式监控5.4.1 介绍5.4.2 配置zabbix proxy5.5 SNMP监控5.5.1 使用范围5.5.2 安装snmp程序5.5.3 配置snmp程序5.5.4 测试snmp5.5.5 在web界面进行配置5.1…

LeetCode 203. 移除链表元素

原题链接 难度&#xff1a;easy\color{Green}{easy}easy 题目描述 给你一个链表的头节点 headheadhead 和一个整数 valvalval &#xff0c;请你删除链表中所有满足 Node.valvalNode.val valNode.valval 的节点&#xff0c;并返回 新的头节点 。 示例 1&#xff1a; 输入&a…

如何利用Power Virtual Agents机器人获取OneNote教学资源

今天我们继续来介绍如何利用PVA聊天机器人来获取OneNote教学资源。设计思路是在PVA聊天机器人的对话框中输入触发短语后&#xff0c;PVA聊天机器人会将指定的OneNote教学资源发送到学生的电子邮箱中。 首先&#xff0c;在PVA聊天机器人中创建主题。 创建一个“问题”后&#x…

【Spring AOP】Spring AOP快速使用

文章目录前言1、相关注解类注解方法注解2、execution 表达式例一【execution 表达式 的限制使用】例二【execution 表达式 的通配使用】3、相关pom依赖4、案例创建接口Aop使用 方式一【Before 、After 、AfterRuturning、AfterThrowing版】Aop使用 方式二【Around版】前言 Aop…

【笔记】通过labview调用halcon

使用原因&#xff1a;手眼标定使用halcon的九点标定&#xff0c;但是整体系统是用labview的&#xff0c;机器人得到二维坐标后&#xff0c;需经过halcon算子计算得到机器人坐标系下坐标&#xff0c;在进行运动。 下载路径&#xff1a; 链接&#xff1a;https://pan.baidu.com/s…

「计算机组成原理」数据的表示和运算(上)

文章目录一、进位计数制1.1 其他进制转十进制1.2 十进制转其他进制1.3 二进制、八进制和十六进制1.3 真值和机器数二、BCD码2.1 8421码2.2 余3码2.3 2421码三、整数的表示和运算3.1 无符号整数3.1.1 无符号整数的表示3.1.2 无符号整数的运算3.2 有符号整数3.2.1 有符号整数的表…

聚观早报 | 微信也要下场做“外卖”?;《羊了个羊》营收破亿

今日要闻&#xff1a;微信也要下场做“外卖”&#xff1f;;《羊了个羊》营收破亿&#xff1b;苹果将新XR头显上市推迟至6月&#xff1b;“交个朋友”被爆欠薪暴力裁员&#xff1f;&#xff1b;微软解释ChatGPT Bing AI推出速度缓慢的原因微信也要下场做“外卖”&#xff1f;腾讯…

C语言返回类型为指针的一些经典题目(上)

大家好&#xff0c;今天和大家分享一下C语言返回类型为指针的一些重要题目&#xff0c;看完你会恍然大悟。原来我对指针的了解还停留在指针只是一个地址的位置上&#xff0c;看完后你会对指针的用法进一步得到提升。目录一.关于指针类型的基础概念二.题目剖析一.关于指针类型的…

Java反序列化漏洞——CommonsCollections6链分析

一、前因因为在jdk8u71之后的版本中&#xff0c;sun.reflect.annotation.AnnotationInvocationHandler#readObject的逻辑发生了变化&#xff0c;导致CC1中的两个链条都不能使用&#xff0c;所有我们需要找一个在高版本中也可用的链条。/* Gadget chain: java.io.ObjectInputStr…

35岁危机

人们对社会的期望是不断变更的&#xff0c;无论拥有高技能的人还是普通的白领&#xff0c;这种期望都让人们不断地励磁进步&#xff0c;以期实现自己的理想。但是&#xff0c;当人们达到35岁时&#xff0c;多数人就会陷入一种状态&#xff0c;这被称之为“35岁危机”。 在35岁…

时间轮和时间堆管理定时器

高性能定时器 时间轮 由于排序链表定时器容器有这样一个问题&#xff1a;添加定时器的效率偏低。而即将介绍的时间轮则解决了这个问题。一种简单的时间轮如下所示。 如图所示的时间轮内&#xff0c;指针指向轮子上的一个slot&#xff08;槽&#xff09;&#xff0c; 它以恒定…

Linux操作系统-线程互斥,线程同步,生产者消费者模型

线程互斥线程互斥及相关概念线程互斥&#xff08;Mutual Exclusion&#xff09;是指在多线程环境下&#xff0c;同一时刻只能有一个线程访问共享资源&#xff0c;以避免对该资源的不正确访问&#xff0c;造成数据不一致等问题。例如&#xff0c;如果有多个线程都要同时对同一个…