vue+element-ui JYAdmin后台管理系统模板-集成方案【项目搭建篇1】
项目搭建时间:2020-06-29 本章节:讲述基于vue/cli, 项目的基础搭建。 本主题讲述了vue+element-ui
JYAdmin 后台管理系统模板-集成方案,从零到一的手写搭建全过程。
该项目不仅是一个持续完善、高效简洁的后台管理系统模板,还是一套企业级后台系统开发集成方案,致力于打造一个
与时俱进、高效易懂、高复用、易维护扩展的应用方案。
(1)、 检查环境
1、vue create vueapp 默认安装
2、启动项目
$ cd vueapp
$ npm run serve
3、IE兼容测试 支持IE11
4、安装路由和vuex
cnpm install --save vue-router
cnpm install --save vuex
5、安装sass和element-ui
cnpm install --save sass-loader
cnpm install --save node-sasscnpm i element-ui -S
5.1、按需引入element-ui
cnpm install babel-plugin-component -D
然后,将 .babelrc 修改为:
{"presets": [["es2015", { "modules": false }]],"plugins": [["component",{"libraryName": "element-ui","styleLibraryName": "theme-chalk"}]]
}
接下来,如果你只希望引入部分组件,比如 Button 和 Select,那么需要在 main.js 中写入以下内容:
import Vue from 'vue';
import { Button, Select } from 'element-ui';
import App from './App.vue';Vue.component(Button.name, Button);
Vue.component(Select.name, Select);
/* 或写为* Vue.use(Button)* Vue.use(Select)*/new Vue({el: '#app',render: h => h(App)
});
目录结构如下
5、路由配置 (@/router/index.js)
import Vue from 'vue'import Router from 'vue-router'import routes from './router'Vue.use(Router)const router = new Router({routes,// mode: 'history',// base: '/html/chat'})// 登陆页面路由 name// const LOGIN_PAGE_NAME = 'login'// 跳转之前router.beforeEach((to, from, next) => {if (to.name) {next()}// const token = getToken()// if (!token && to.name !== LOGIN_PAGE_NAME) {// // 未登录且要跳转的页面不是登录页// next({// name: LOGIN_PAGE_NAME // 跳转到登录页// })// } else if (!token && to.name === LOGIN_PAGE_NAME) {// // 未登陆且要跳转的页面是登录页// next() // 跳转// } else if (token && to.name === LOGIN_PAGE_NAME) {// // 已登录且要跳转的页面是登录页// next({// name: 'index' // 跳转到 index 页// })// } else {// if (token) {// next() // 跳转// } else {// next({// name: LOGIN_PAGE_NAME// })// }// }})// 跳转之后// router.afterEach(to => {// //// })export default router
5.1、路由配置 (@/router/router.js)
/*** meta 可配置参数* @param {boolean} icon 页面icon* @param {boolean} keepAlive 是否缓存页面* @param {string} title 页面标题*/export default [{path: '/',redirect: '/jsDemo'},{path: '/jsDemo',name: 'jsDemo',component: () => import('@/pages/jsDemo/index.vue'),meta: {icon: '',keepAlive: true,title: 'jsDemo'}},{path: '/tsDemo',name: 'tsDemo',component: () => import('@/pages/tsDemo/index.vue'),meta: {icon: '',keepAlive: false,title: 'tsDemo'}}]
6、store配置 (@/store/index.js)
import Vue from 'vue'import Vuex from 'vuex'// modulesimport getters from './getters'import user from './modules/user'Vue.use(Vuex)export default new Vuex.Store({state: {count: 1},mutations: {increment(state, n) {// 变更状态state.count = n}},actions: {increment({ commit }, count) {commit('increment', count)},incrementA({ commit }, count) {return new Promise((resolve) => {commit('increment', count)resolve()})},},modules: {user},getters})
6.1、store配置 (@/store/getters.js)
const getters = {user: state => state.user,}export default getters
6.2、store配置 (@/store/modules/user.js)
const user = {state: {name: 'zxb'},mutations: {SET_NAME: (state, name) => {state.name = name}},actions: {setName({ commit }, name) {commit('SET_NAME', name)}},getters: {users(state) {return state}}}export default user
7、主路由组件调用 store (@/pages/jsDemo/index.vue)
<template><div>jsDemo1</div></template><script lang="js" src="./jsDemo.js"></script><style lang="scss" src="./jsDemo.scss" scoped>
7.1、主路由组件调用 store (@/pages/jsDemo/jsDemo.js)
export default {name: 'jsDemo',components: {},data() {return {}},props: {},computed: {},filters: {},activated() {},created() {},mounted() {this.$store.state.count = 1console.log(this.$store.state.count)this.$store.commit('increment', 10)console.log(this.$store.state.count)this.$store.dispatch('increment', 50)console.log(this.$store.state.count)this.$store.dispatch('incrementA', 60).then(() => {console.log(this.$store.state.count)})console.log(this.$store.state.count)this.$store.commit('SET_NAME', 'zxb1')console.log(this.$store.state.user.name)},updated() {},destroyed() {},methods: {}}
最终效果如下:
本章节总结:讲述基于vue/cli,
项目的基础搭建。
1、vue/cl基础配置,sass、element-ui安装
2、基础路由配置
3、ie浏览器兼容测试
4、vuex安装与使用
如需下载源代码请联系博主
(微信号:lovehua_5360)
你也可以选择留言反馈
下章节请关注个人微信公众号【微新悦】,欢迎持续关注:
备注:(使用微信客户端打开) 个人微信公众号:【微新悦】
微信公众号原文链接:http://mp.weixin.qq.com/mp/homepage?__biz=MzIyOTg4MzQyNw==&hid=15&sn=4bc799ac6079fd28d20365f92eb3cb91&scene=18#wechat_redirect
vue+element-ui JYAdmin后台管理系统模板-集成方案【项目搭建篇1】相关推荐
- vue + element ui 的后台管理系统框架_从零开始搭建 VUE + Element UI后台管理系统框架...
点击右上方红色按钮关注"web秀",让你真正秀起来 前言 后台管理系统前端框架,现在很流行的形式都是,上方和左侧都是导航菜单,中间是具体的内容.比如阿里云.七牛云.头条号.百家号等 ...
- 电商后台管理系统(一)项目搭建
电商后台管理系统(一)项目搭建 前言 一.服务器端框架搭建 1. 安装ThinkJS命令 2. 创建项目及运行项目命令 3. 项目结构 二.前端框架搭建 三.MySQL数据库搭建 总结 前言 新开的坑 ...
- icworks+D2Admin+vue+element UI 制作后台管理
前言: icworks又名飞冰 海量可复用物料,通过 GUI 工具极速构建中后台应用.是阿里巴巴前端团队开源的一个产品,目的让前端开发简单而友好. 进入正题 使用以及构建项目非常简单 1.直接进入官网 ...
- 计算机毕业设计node.js+vue+Element电商后台管理系统
项目介绍 网络的广泛应用给生活带来了十分的便利.所以把电商后台管理与现在网络相结合,利用node技术建设电商后台管理系统,实现电商后台管理的信息化.则对于进一步提高电商后台管理发展,丰富电商后台管理经 ...
- Vue + Element UI 实现权限管理系统:页面权限控制(菜单 + 按钮)
权限控制方案 既然是后台权限管理系统,当然少不了权限控制啦,至于权限控制,前端方面当然就是对页面资源的访问和操作控制啦. 前端资源权限主要又分为两个部分,即导航菜单的查看权限和页面增删改操作按钮的操作 ...
- Vue + Element UI 实现权限管理系统 前端篇(八):管理应用状态
使用 Vuex 管理应用状态 1. 引入背景 像先前我们是有导航菜单栏收缩和展开功能的,但是因为组件封装的原因,隐藏按钮在头部组件,而导航菜单在导航菜单组件,这样就涉及到了组件收缩状态的共享问题.收缩 ...
- Vue + Element UI 实现权限管理系统 前端篇(七):功能组件封装
组件封装 为了避免组件代码的臃肿,这里对主要的功能部件进行封装,保证代码的模块化和简洁度. 组件结构 组件封装重构后,试图组件结构如下图所示 代码一览 Home组件被简化,包含导航.头部和主内容三个组 ...
- Vue + Element UI 实现权限管理系统(更换皮肤主题)
自定义主题 命令行主题工具 1.安装主题工具 首先安装「主题生成工具」,可以全局安装或者安装在当前项目下,推荐安装在项目里,方便别人 clone 项目时能直接安装依赖并启动. yarn add ele ...
- Vue + Element UI 实现权限管理系统 前端篇(六):更换皮肤主题
自定义主题 命令行主题工具 1.安装主题工具 首先安装「主题生成工具」,可以全局安装或者安装在当前项目下,推荐安装在项目里,方便别人 clone 项目时能直接安装依赖并启动. yarn add ele ...
最新文章
- python之互斥锁
- 微生物组数据库: 一站式环境基因组学数据云平台更新啦!
- js layui 模板属性 添加_layui.laytpl--模板引擎文档
- C/C++ 笔试、面试题目大汇总
- python颜色的字母代码,如何在python中更改特定印刷字母的颜色?
- 手工卸载oracle,升级和卸载Oracle数据库软件的命令整理
- 继续增援武汉,紫光及新华三集团对火神山和雷神山医院捐赠设备!
- din算法 代码_DIN算法代码详细解读
- 数据结构拾遗(2) --红黑树的设计与实现(中)
- java对象的我可变属性,不可变对象的所有属性都必须是最终的吗?
- Android Room联合AsyncListUtil实现RecyclerView分页加载ORM数据
- Recursive Depth first search graph(adj matrix)
- 未来杯总结1--cuda8.0+cuDnnv6+anavonda+tensorflow-gpu+keras+ubuntu16.04
- 乱码(四): 撬动地球的支点
- 原来,神文竟然是汉字
- 日志管理工具 journalctl用法
- 高一下学期计算机,高一信息技术下学期教学计划
- 【Java基础】Java网络编程基础
- 交通 流量 时间序列预测,神经网络 机器学习 BPNN
- Linux入门学习——ssh基础操作
热门文章
- 因为Istio,谷歌不惜公开与CNCF、合作伙伴撕破脸
- AgBioEn赞助库扬精英赛,宣扬绿色发展理念
- 程序员的性格真的内向吗?
- 工业品销售,如何才能轻松赢得订单!
- 网络流例题-小行星二维到三维
- 前端性能优化之--DNS预处理
- latch:cache buffers chains等待事件导致的latch争用的原理原因与检查
- 所有的Python “爬虫“ 初学者,都应该看这篇文章!
- 从零开始快速搭建SpringBoot+Mybatis+小程序应用--微信小程序的入门和前后端的联调
- A10+Android4.0 音频驱动