因为我项目中需要使用VUE,因此我接触到了VUE这个前端框架。我分享下学习VUE的流程。

一、安装vue-cli:

npm install -g @vue/cli
# OR
yarn global add @vue/cli

二、配置vue的环境变量:

否则会出现‘vue‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件的方法

配置方法是:

1、在命令行输入npm config list找到vue路径

2、根据vue的路径找到vue.cmd文件。如果没有找到vue.cmd需要重新安装vue-cli。

3、 将路径配置到环境变量

4、在命令行检查vue是否配置成功: vue -V

三、新建vue项目:

vue create my-project
# OR
vue ui

项目的一些简单设置:

设置完成系统会自动安装:

 创建vue项目就完成了!

来到项目目录查看下

其中node_modules保存是我们安装的依赖,这里已经通过之前的命令安装好了

用Idea打开vue项目看看

四、运行项目

进入vue文件夹:cd vue

运行项目:npm run server

运行成功,端口8080

访问一下localhost:8080,成功!说明项目搭建成功了

 五、安装element框架

想要搭建一个后台管理系统的前端页面,这样一个简单的页面是远远不够的,我们还需要丰富我们的页面,此时就可以使用到element框架了。

在项目路径运行:npm i element-ui -S

或者在Idea的命令行运行:npm i element-ui -S

vue和element-ui的版本要对应,如果出现下面问题:

重新下载vue即可,按照提示缺少的vue版本号重新下载vue:

然后再次执行: npm i element-ui -S

安装成功

六、引入ElementUI

在main.js中加入

import 'element-ui/lib/theme-chalk/index.css';

import App from './App.vue';

Vue.use(ElementUI);

在HomeView.vue 中使用

写完之后,run一下看下效果:

在命令行输入:npm run serve

输入localhost:8080查看页面

框架组件引入成功!

七、引入主体框架

在Element官网找到想要搭建的框架布局,将代码复制到HomeView.vue:

<template><div>复制的代码段</div>
</template>......data(){引入的数据};return{返回值}}

修改App.vue文件

<template><div id="app"><router-view/></div>
</template>

引入完成,展示下框架模板效果:

 八、自定义组件

在assets中添加组件文件,

  然后再main.js中引入:

import './assets/global.css'

效果展示:

 九、整体布局完善

globle.css

*{margin: 0;padding: 0;box-sizing: border-box;
}

App.vue

<template><div id="app"><router-view/></div>
</template>

HomeView.vue

<template><el-container style="min-height: 100vh"><el-aside :width="sideWidth + 'px'" style="background-color: rgb(238, 241, 246); box-shadow: 2px 0 6px rgb(0 21 41 / 35%);"><el-menu :default-openeds="['1', '3']" style="min-height: 100%; overflow-x: hidden"background-color="rgb(48, 65, 86)"text-color="#fff"active-text-color="#ffd04b":collapse-transition="false":collapse="isCollapse"><div style="height: 60px; line-height: 60px; text-align: center"><img src="../assets/logo.png" alt="" style="width: 20px; position: relative; top: 5px; margin-right: 5px"><b style="color: white" v-show="logoTextShow">后台管理系统</b></div><el-submenu index="1"><template slot="title"><i class="el-icon-message"></i><span slot="title">导航一</span></template><el-menu-item-group><template slot="title">分组一</template><el-menu-item index="1-1">选项1</el-menu-item><el-menu-item index="1-2">选项2</el-menu-item></el-menu-item-group><el-menu-item-group title="分组2"><el-menu-item index="1-3">选项3</el-menu-item></el-menu-item-group><el-submenu index="1-4"><template slot="title">选项4</template><el-menu-item index="1-4-1">选项4-1</el-menu-item></el-submenu></el-submenu><el-submenu index="2"><template slot="title"><i class="el-icon-menu"></i><span slot="title">导航二</span></template><el-menu-item-group><template slot="title">分组一</template><el-menu-item index="2-1">选项1</el-menu-item><el-menu-item index="2-2">选项2</el-menu-item></el-menu-item-group><el-menu-item-group title="分组2"><el-menu-item index="2-3">选项3</el-menu-item></el-menu-item-group><el-submenu index="2-4"><template slot="title">选项4</template><el-menu-item index="2-4-1">选项4-1</el-menu-item></el-submenu></el-submenu><el-submenu index="3"><template slot="title"><i class="el-icon-setting"></i><span slot="title">导航三</span></template><el-menu-item-group><template slot="title">分组一</template><el-menu-item index="3-1">选项1</el-menu-item><el-menu-item index="3-2">选项2</el-menu-item></el-menu-item-group><el-menu-item-group title="分组2"><el-menu-item index="3-3">选项3</el-menu-item></el-menu-item-group><el-submenu index="3-4"><template slot="title">选项4</template><el-menu-item index="3-4-1">选项4-1</el-menu-item></el-submenu></el-submenu></el-menu></el-aside><el-container><el-header style="font-size: 12px; border-bottom: 1px solid #ccc; line-height: 60px; display: flex"><div style="flex: 1; font-size: 20px"><span :class="collapseBtnClass" style="cursor: pointer" @click="collapse"></span></div><el-dropdown style="width: 70px; cursor: pointer"><span>刻晴</span><i class="el-icon-arrow-down" style="margin-left: 5px"></i><el-dropdown-menu slot="dropdown"><el-dropdown-item>个人信息</el-dropdown-item><el-dropdown-item>退出</el-dropdown-item></el-dropdown-menu></el-dropdown></el-header><el-main><el-table :data="tableData"><el-table-column prop="date" label="日期" width="140"></el-table-column><el-table-column prop="name" label="姓名" width="120"></el-table-column><el-table-column prop="address" label="地址"></el-table-column></el-table></el-main></el-container></el-container>
</template><script>export default {name: 'Home',data() {const item = {date: '2012-02-02',name: '刻晴',address: '璃月港'};return {tableData: Array(10).fill(item),msg: "hello 阿晴",collapseBtnClass: 'el-icon-s-fold',isCollapse: false,sideWidth: 200,logoTextShow: true}},methods: {collapse() {  // 点击收缩按钮触发this.isCollapse = !this.isCollapseif (this.isCollapse) {  // 收缩this.sideWidth = 64this.collapseBtnClass = 'el-icon-s-unfold'this.logoTextShow = false} else {   // 展开this.sideWidth = 200this.collapseBtnClass = 'el-icon-s-fold'this.logoTextShow = true}}}
}
</script>

布局效果展示:

十、页面布局完善

在Element官网找到组件对页面进行美化

main.js

import Vue from 'vue'
import App from './App.vue'
import router from './router'
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import './assets/global.css'Vue.config.productionTip = falseVue.use(ElementUI, { size: "mini" });new Vue({router,render: h => h(App)
}).$mount('#app')

globle.css

*{margin: 0;padding: 0;box-sizing: border-box;
}.ml-5 {margin-left: 5px;
}
.mr-5 {margin-right: 5px;
}
.pd-10 {padding: 10px 0;
}

HomeView.vue

<template><el-container style="min-height: 100vh"><el-aside :width="sideWidth + 'px'" style="box-shadow: 2px 0 6px rgb(48, 65, 86);"><el-menu :default-openeds="['1', '3']" style="min-height: 100%; overflow-x: hidden"background-color="rgb(48, 65, 86)"text-color="#fff"active-text-color="#ffd04b":collapse-transition="false":collapse="isCollapse"><div style="height: 60px; line-height: 60px; text-align: center"><img src="../assets/logo.png" alt="" style="width: 20px; position: relative; top: 5px; right: 5px"><b style="color: white" v-show="logoTextShow">后台管理系统</b></div><el-submenu index="1"><template slot="title"><i class="el-icon-message"></i><span slot="title">导航一</span></template><el-menu-item-group title="分组2"><el-menu-item index="1-3">选项3</el-menu-item></el-menu-item-group><el-submenu index="1-4"><template slot="title">选项4</template><el-menu-item index="1-4-1">选项4-1</el-menu-item></el-submenu></el-submenu><el-submenu index="2"><template slot="title"><i class="el-icon-menu"></i><span slot="title">导航二</span></template><el-submenu index="2-4"><template slot="title">选项4</template><el-menu-item index="2-4-1">选项4-1</el-menu-item></el-submenu></el-submenu><el-submenu index="3"><template slot="title"><i class="el-icon-setting"></i><span slot="title">导航三</span></template><el-submenu index="3-4"><template slot="title">选项4</template><el-menu-item index="3-4-1">选项4-1</el-menu-item></el-submenu></el-submenu></el-menu></el-aside><el-container><el-header style="font-size: 12px; border-bottom: 1px solid #ccc; line-height: 60px; display: flex"><div style="flex: 1; font-size: 20px"><span :class="collapseBtnClass" style="cursor: pointer" @click="collapse"></span></div><el-dropdown style="width: 70px; cursor: pointer"><span>钟离</span><i class="el-icon-arrow-down" style="margin-left: 5px"></i><el-dropdown-menu slot="dropdown" ><el-dropdown-item style="font-size: 14px; padding: 5px 0">个人信息</el-dropdown-item><el-dropdown-item style="font-size: 14px; padding: 5px 0">退出</el-dropdown-item></el-dropdown-menu></el-dropdown></el-header><el-main><div style="margin-bottom: 30px"><el-breadcrumb separator="/"><el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item><el-breadcrumb-item>用户管理</el-breadcrumb-item></el-breadcrumb></div><div style="margin: 10px 0"><el-input style="width: 200px" placeholder="请输入名称" suffix-icon="el-icon-search"></el-input><el-input style="width: 200px" placeholder="请输入邮箱" suffix-icon="el-icon-message" class="ml-5"></el-input><el-input style="width: 200px" placeholder="请输入地址" suffix-icon="el-icon-position" class="ml-5"></el-input><el-button class="ml-5" type="primary">搜索</el-button></div><div style="margin: 10px 0"><el-button type="primary">新增 <i class="el-icon-circle-plus-outline"></i></el-button><el-button type="danger">批量删除 <i class="el-icon-remove-outline"></i></el-button><el-button type="primary">导入 <i class="el-icon-bottom"></i></el-button><el-button type="primary">导出 <i class="el-icon-top"></i></el-button></div><el-table :data="tableData" border stripe :header-cell-class-name="headerBg"><el-table-column prop="date" label="日期" width="140"></el-table-column><el-table-column prop="name" label="姓名" width="120"></el-table-column><el-table-column prop="address" label="地址"></el-table-column><el-table-column label="操作"  width="200" align="center"><template slot-scope="scope"><el-button type="success">编辑 <i class="el-icon-edit"></i></el-button><el-button type="danger">删除 <i class="el-icon-remove-outline"></i></el-button></template></el-table-column></el-table><div style="padding: 10px 0"><el-pagination:page-sizes="[5, 10, 15, 20]":page-size="10"layout="total, sizes, prev, pager, next, jumper":total="400"></el-pagination></div></el-main></el-container></el-container>
</template><script>export default {name: 'Home',data() {const item = {date: '2022-02-02',name: '刻晴',address: '璃月港'};return {tableData: Array(10).fill(item),msg: "hello 阿晴",collapseBtnClass: 'el-icon-s-fold',isCollapse: false,sideWidth: 200,logoTextShow: true,headerBg: 'headerBg'}},methods: {collapse() {  // 点击收缩按钮触发this.isCollapse = !this.isCollapseif (this.isCollapse) {  // 收缩this.sideWidth = 64this.collapseBtnClass = 'el-icon-s-unfold'this.logoTextShow = false} else {   // 展开this.sideWidth = 200this.collapseBtnClass = 'el-icon-s-fold'this.logoTextShow = true}}}
}
</script><style>
.headerBg {background: #eee!important;
}
</style>

页面效果展示:

这样我们的后台管理系统的前端页面就搭建完成了!

结语:坚定目标,日日精进,必有所成。共勉! !

从零开始学习使用VUE搭建一个管理系统页面相关推荐

  1. 从零开始搭建一个管理系统-vue3.0项目创建-----1

    从零开始搭建一个管理系统-vue3.0项目创建-----1 讲在前面 webpack构建项目 代码编辑器 依赖修改 码云代码地址 讲在前面 假设你已了解关于 HTML.CSS. JavaScript ...

  2. 根据vue的脚手架 简单的搭建一个单页面

    根据vue的脚手架 简单的搭建一个单页面 1.首先需要安装npm node.js 自带,所以去安装node.js 就可以了. node中文网址 这里是网址 或者自行百度,网上很好找.另外还需要手动安装 ...

  3. 前端app调起摄像头 只显示在页面_猫也能看得懂的教程之一分钟使用Vue搭建简单Web页面...

    本教程适合人群: 已经了解过过html.js.css,想深入学习前端技术的小伙伴 有前端开发经验.但是没有使用过Vue的小伙伴 有过其他编程经验,对前端开发感兴趣的小伙伴 学习本教程之后你将会: 了解 ...

  4. 从零开始学习jQuery (七) jQuery动画-让页面动起来!

    本系列文章导航 从零开始学习jQuery (一) 开天辟地入门篇 从零开始学习jQuery (二) 万能的选择器 从零开始学习jQuery (三) 管理jQuery包装集 从零开始学习jQuery ( ...

  5. 使用bootstrap搭建后台管理系统页面《一》

    1. 使用bootstrap搭建后台管理系统页面<一> 一般的后台管理系统页面主体包括四个部分,顶部导航栏,左侧菜单栏,中间正文页和底部的页脚. 其中左侧和顶部使用的是bootstrap的 ...

  6. 使用bootstrap搭建后台管理系统页面《二》

    1.使用bootstrap搭建后台管理系统页面<二> 这次不需要另外写css.直接完全引用bootstrap下的样式. 完成以后的效果: 源代码: <%@ page language ...

  7. Vue 搭建一个前端项目

    一.前言 之前图省事,都是在html中引入Vue.js的CDN来使用Vue开发网站项目,其实正确的做法应该是使用Vue构建一个完整的项目,进而进行前后端分离的开发. 二.让我们开始吧! 1 node环 ...

  8. 使用Vue写一个登录页面

    上一博客讲到构建了一个vue项目,现在在那个项目之上实现一个登录页面. 1.构建项目的目录 2.App.vue <template><div id="app"&g ...

  9. Linux下如何颁发证书:学习使用openssl搭建一个CA

    这两天学习了openssl在LInux中的使用,openssl是一款开源的加密工具,在Linux环境下,我们能够利用它来搭建一个CA来实现证书的发放,可以用于企业内部使用的加密工具.在介绍openss ...

最新文章

  1. hbase以mr导数据方式
  2. 多线程不重复读取数据_用 PHP 实现多线程编程
  3. 第十六届全国大学智能车竞赛东北赛区报名信息统计
  4. 字节跳动学习笔记:java多线程实现原理
  5. Linux 将文件夹下的所有文件复制到另一个文件里
  6. Python科学计算扩展库NumPy之np.array()与np.asarray()区别
  7. vs下 string输出中文 打印中文
  8. 单刹车信号不合理故障_关于汽车制动系统有哪些故障?该如何解决?
  9. android activity生命周期的一张经典图片
  10. AOP原理解析及Castle、Autofac、Unity框架使用
  11. 我的新书《Spring Cloud实战》预告
  12. 服务器架构设计文档,架构设计文档
  13. 深圳90后小伙拿到14所国外名牌大学offer
  14. 1993年考研数学一解析pdf
  15. c语言物联网服务器,物联网卡服务器(物联网应用层服务器端集)
  16. 对人工智能的初步认识
  17. 怎么录屏幕视频?教你学会录制屏幕
  18. 翻转二叉树+检查二叉树是否镜像对称
  19. 通过 blast 结果查看 测序数据fastq是否被污染,以及污染reads所属物种、所占比例
  20. 也许风停了,我们才能心平气和的看待一家公司

热门文章

  1. RHCE 第二周作业
  2. Java中数组的定义和使用
  3. 流水作业调度(动态规划)
  4. 异步复位同步释放原理
  5. C++对接国际验证码接口DEMO示例
  6. 【screen】Linux下screen的使用
  7. 《追风筝的人》读书笔记
  8. PageAdmin CMS建站系统最新版本(V4.0.09)体验评测
  9. Vultr新用户充值送50刀
  10. 多功能运算求解器_matlab中bsxfun函数