全栈的自我修养: 为我们的项目添加首页

You can never replace anyone. What is lost is lost.

每个人都是无可替代的,失去了便是失去了。

前言

上篇文章使用 vue ui 创建了项目 kola, 开源代码如下:

在这片文章中,我们继续开始,先添加个项目的首页以及登录页面,暂时不与后端交互

完成后效果图

公共首页

作为一个偏后端管理项目,其实做不做公共首页都是可以的,毕竟有个 登录 以及登录后的 后台功能 页就可以了,这里做个公共首页 主要为了介绍下项目

一般首页做的都比较高大上,但后台管理系统风格一般都比较简单

  1. 上下结构

    Header 一般放项目或者企业logo, 常见的还会有 首页功能关于 等常见操作,

    Main 会加一些高大上的宣传图片、文案、数据呀

  2. 上中下结构

    Header 一般放项目或者企业logo, 常见的还会有 首页功能关于 等常见操作,

    Main 会加一些高大上的宣传图片、文案、数据呀

    Footer 会写一些版权信息呀、服务条款、公司地址、还有一些便捷操作的网站地图

  3. 其他

    剩下的就是各种花里胡哨的首页了

作为一个偏后端的管理项目,我们就是用第二种方案吧!

关于首页可以找专门的前端小姐姐和小哥哥来设计一下,也可以直接去那种前端模板之家类似网站找个模板,修改一下

公共首页实现

因为是用 element ui, 在其提供的容器布局中,已经提供了对应的解决方案,期中第二种为

<el-container>
<el-header>Header</el-header>
<el-main>Main</el-main>
<el-footer>Footer</el-footer>
</el-container>

0. 先启动我们的项目

运行下 yarn serve, 这样在修改的时候就可以保持热部署了,我们可以实时的看到修改结果,启动后会提示地址,直接在浏览器打开就能看到 Vue 默认配置的首页了

1. 修改title

修改文件 public/index.html

在这里我们将首页 title 和 样式进行修改,同时删除 <noscript> 毕竟自己用,很容易搞定浏览器兼容的

并在该文件中加入 body,html{ height:100%;margin: 0;} 样式

2. 修改首页

修改文件 src/App.vue

直接将原内容改为

<template>
<div id="app">
<router-view/>
</div>
</template> <script>
export default {
name: 'app'
}
</script> <style>
#app {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
background-color: #F3F5F8;
height: 100%;
padding: 0;
}
</style>

3. 修改 Home 组件

在我们查看路由配置的时候,可以看到

import Home from '../views/Home.vue'

const routes = [{
path: '/',
name: 'Home',
component: Home
}
]

其中 '/' 将匹配到 Home 组件, 又因为我们上面将 App.vue 中内容已经全部清理掉,则首页展示的内容均来自 Home,这里我们开始修改 src/views/Home.vue 文件

  1. 第一步删除其中 HelloWorld 的使用,同时一并删除那个文件,并把 img 也删除
<template>
<div class="home">
</div>
</template> <script>
export default {
name: 'Home'
}
</script>

加入布局组件

<template>
<div class="home">
<el-container>
<el-header>
<el-row>
<el-col :span="8">
<div class='title'>Kola</div>
</el-col>
<el-col :span="16" style="text-align: right; padding-right: 30px;">
<el-button plain size="medium">登录</el-button>
</el-col>
</el-row></el-header>
<el-main>这里放一些高大上的描述和图片吧</el-main>
<el-footer>&copy; 2020 双鬼带单</el-footer>
</el-container>
</div>
</template> <style scope="this api replaced by slot-scope in 2.5.0+">
.home {
height: 100%;
} .title {
background-color: #1ec198;
width: 150px;
padding-left: 30px;
} .el-container {
height: 100%;
} .el-header {
height: 60px;
background-color: white;
line-height: 60px;
padding: 0!important;
} .el-header > span,
.el-header .el-dropdown {
font-size: 18px;
} .el-footer {
background-color: #252d36;
color: #ffc852;
text-align: center;
line-height: 60px;
} .el-main {
color: #333;
text-align: center;
}
</style>

git

参考

原来写个Vue 首页就这么简单的更多相关文章

  1. vue.js+webpack在一个简单实例中的使用过程demo

    这里主要记录vue.js+webpack在一个简单实例中的使用过程 说明:本次搭建基于Win 7平台 Node.js 安装官网提供了支持多种平台的的LTS版本下载,我们根据需要来进行下载安装.对于Wi ...

  2. [转] Vue原理解析——自己写个Vue

    一.Vue对比其他框架原理 Vue相对于React,Angular更加综合一点.AngularJS则使用了“脏值检测”. React则采用避免直接操作DOM的虚拟dom树.而Vue则采用的是 Obje ...

  3. Vue原理解析——自己写个Vue

    Vue由于其高效的性能和灵活入门简单.轻量的特点下变得火热.在当今前端越来越普遍的使用,今天来剖析一下Vue的深入响应式原理. tips:转自我的博客唐益达博客,此为原创.转载请注明出处,原文链接 一 ...

  4. 总结Vue第一天:简单介绍、基本常用知识、辅助函数

    总结Vue第一天:简单介绍.基本常用知识.辅助函数 中文官网:https://cn.vuejs.org/v2/guide/syntax.html 遇到不熟悉的可以先看一下官网,然后再看一下一些别人写的 ...

  5. 写一个ajax程序就是如此简单

    写一个ajax程序就是如此简单 ajax介绍: 1:AJAX全称为Asynchronous JavaScript and XML(异步JavaScript和XML),指一种创建交互式网页应用的网页开发 ...

  6. 用Qt写软件系列三:一个简单的系统工具(上)

    导言 继上篇<用Qt写软件系列二:QIECookieViewer>之后,有一段时间没有更新博客了.这次要写的是一个简单的系统工具,需求来自一个内部项目.功能其实很简单,就是查看当前当前系统 ...

  7. 写一个vue组件

    写一个vue组件 我下面写的是以.vue结尾的单文件组件的写法,是基于webpack构建的项目.如果还不知道怎么用webpack构建一个vue的工程的,可以移步到vue-cli. 一个完整的vue组件 ...

  8. vue双向数据绑定的简单实现

    vue双向数据绑定的简单实现 参考教程:链接 <!DOCTYPE html> <html lang="en"> <head> <meta ...

  9. 一个基于 easyui, vue 和 maptalks 的简单地图应用

    一个基于 easyui, vue 和 maptalks 的简单地图应用 做了一个小应用,结合 easyui , vue 和 maptalks 的简单的地图应用.可以用来画图,什么的. 地址

随机推荐

  1. ES6入门(一)

    目录 ES6入门 (一) let 和 const 命令 let 定义 注意事项 块级作用域 不存在变量提升 let的特点就是存在暂时性死区 特殊情况的暂时性死区 之 ES6函数存在默认值情况 不允许重 ...

  2. 三种存储方式DAS、NAS、SAN

    ------------恢复内容开始------------ 一.DAS.NAS.SAN在存储领域的位置 随着主机.磁盘.网络等技术的发展,数据存储的方式和架构也在一直不停改变,本文主要介绍目前主流的 ...

  3. LintCode笔记 - 145.大小写转换 - 极简之道 - 最短代码

    这道题目一眼就能看出是送分题,当然在这里也不谈高难度的实现逻辑,肯定有同学会想直接用自带函数实现不就可以了吗? 对的,就是这么简单,然而今天的重点是如何把代码简写到最短. 本文章将带你把代码长度从 一 ...

  4. MySQL数据库的卸载与安装

    MySQL数据库的卸载与安装 MySQL的完全卸载 因为不知道什么原因,电脑里同时存在两个版本的mysql,所以决定卸载重新安装,但是大家都说MySQL很难清除干净,所以特地查找完全卸载MySQL的方 ...

  5. HDFS客户端环境准备

    一.下载Hadoop jar包至非中文路径 下载链接:https://hadoop.apache.org/releases.html 解压至非中文路径 二.配置Hadoop环境变量 配置HADOOP_ ...

  6. java IO流 (八) RandomAccessFile的使用

    1.随机存取文件流:RandomAccessFile 2.使用说明: * 1.RandomAccessFile直接继承于java.lang.Object类,实现了DataInput和DataOutpu ...

  7. 关于Object.defineProperty

    讲解大致会根据下图展开     本文部分参考了书籍<你不知道的javascript>上卷 对象的定义与赋值 经常使用的定义与赋值方法obj.prop =value或者obj['prop'] ...

  8. 我和ABP vNext 的故事

    Abp VNext是Abp的.NET Core 版本,但它不仅仅只是代码重写了.Abp团队在过去多年社区和商业版本的反馈上做了很多的改进.包括性能.底层的框架设计,它融合了更多优雅的设计实践.不管你是 ...

  9. MySQL数据库---表的操作

    存储引擎 表就是文件,表的存储引擎就是文件的存储格式,即数据的组织存储方式. 字段类型 1.整数类型 整数类型:TINYINT SMALLINT MEDIUMINT INT BIGINT 作用:存储年 ...

  10. 深入掌握K8S Pod

    k8s系列文章: 什么是K8S K8S configmap介绍 Pod是k8s中最小的调度单元,包含了一个"根容器"和其它用户业务容器. 如果你使用过k8s的话,当然会了解pod的 ...