之前两篇文章已经把vue CLI 介绍的差不多了,并且也做了一些自定义的修改,那么接下来,我们就可以开始coding啦,我们先总结下,我们还欠缺哪些知识点呢?
1、vue.js的一些基础知识
2、router路由的配置
3、vuex的使用(状态管理工具)
以上3点本篇暂时都不讲,本篇先讲讲,如何编写好一个完整的界面,以及拿到项目的时候,该如何划分好通用模块,做到高复用。
分析项目设计图
该图,是截图某位前辈的博客,如有得罪多多包涵。
博客首页分析
1. 导航部分(组件)
2. 左侧- 博主介绍(组件)
3. 中间- 文章列表(组件)
4. 右侧- 公告(组件)
5. 右侧- 评论(组件)
6. 右侧- 标签(组件)
7. 右侧- 友情链接(组件)
首页的组件就这些了,首页我们去建立这个界面,在page文件夹下建立”home/index.vue”
<template>
<div id="wrapper">
</div>
</template>
<script>
/* eslint-disable */
export default{
name:"homeIndex"
}
</script>
<style scoped lang="less">
@import "../../style/homeIndex.less";
</style>
这个是界面骨架,我们按照之前分析的组件一个一个编写然后填充进来即可
这里我就不写所有组件了,我就把左侧博主介绍组件贴出来
首先,这个组件以后在文章内容界面也需要复用,所以我们抽取成一个独立组件
在src/components/common/下面建立一个组件(名字取的比较随意)leftSide.vue
我直接把这个组件的代码贴出来,因为还是比较简单的
<template>
<div id="leftSide">
<div class="header">
<img src="../../images/header.jpg" alt="">
</div>
<h4 class="info">
<span>&&</span> -
<span>**</span> -
<span>^^</span>
</h4>
<div class="hot-tip clearfix">
<span>前端</span> |
<span>后台</span>
</div>
<div class="position">
位置:中国:上海
</div>
<div class="contract">
<span class="icon-home2"></span>
<span class="icon-html-five2"></span>
<span class="icon-linkedin"></span>
</div>
</div>
</template>
<script>
/* eslint-disable */
export default{
name:"leftSide"
}
</script>
<style rel="stylesheet/less" lang="less">
@import "../../style/style.less";
#leftSide{
width:25%;
height:440px;
background:#fff;
box-shadow: 0 2px 5px #ddd;
box-sizing: border-box;
.header{
width:100px;
height:100px;
border-radius: 50%;
overflow: hidden;
margin:50px auto;
img{
width:100%;
height:100%;
}
}
.info{
text-align: center;
color:#565a5f;
font-size:30px;
font-weight: bold;
}
.hot-tip{
text-align: center;
color:#565a5f;
font-size:18px;
line-height:40px;
margin:20px 0;
}
.position{
text-align: center;
color:#9a9ea3;
font-size:13px;
}
.contract{
width:80%;
border-top:1px solid #ddd;
margin:30px auto 0;
text-align: center;
padding-top:20px;
span{
margin-right:15px;
font-size:20px;
transition:0.3s all ease;
}
span:hover{
color:red;
}
}
}
</style>
最后效果就是这样
template中编写的就是平时写的HTML元素
script中要定义好该组件的名称
style中就可以直接编写样式了,也可以直接引入外部文件
注意:rel=”stylesheet/less” 这个是告诉编辑器下面的语法采用less,如果不加,编辑器可能会报错
组件编写好了之后,我们要page/home/index.vue界面中引入该组件
page/index.vue中主要是编写界面框架,对于其中可以服用的组件抽取出来,对于那些不需要抽取的直接就写在index.vue中,编写方式都是一样的。我们可以依次都写出来。(记得一定要敲哟~)
下面我就把完整的代码放到github中,欢迎大家下载(代码已经整合好了router,vuex,axios),如果需要快速入手的童鞋们,也可以直接拿来用,当然在后面的文章中,还是会讲解的
地址:https://github.com/shiyou00/blog_vue
接下来主要内容预览:
1、vue组件分析以及模板语法简介
2、route的使用(包含带参数跳转,以及组件接收参数)
3、vue项目中整合axios
4、vue项目中整合vuex
等等…