1.Vue全家桶

vue.js,vue-router,vuex,axios,ES6,Sass/less/Stylus,…

  1. vue.js:computed,过滤器,自定义指令,绑事件(@事件名),绑属性(:属性名),组件通讯(3种)…
  2. vue-router:路由传参,路由守卫,嵌套路由,动态路由,路由懒加载…
  3. vuex:集中管理组件状态,5个要素:state,mutation,action,modules,getters
  4. axios:数据请求
  1. 官网文档:https://github.com/axios/axios
  2. 中文文档:http://www.axios-js.com/zh-cn/docs/
  1. Sass:

2.Vue脚手架创建项目

2.1 安装脚手架

npm install -g @vue/cli   //电脑中只安装一次即可

2.2 创建Vue项目

vue create 项目名

然后按照提示步骤操作:如下图

element step icon用啊 element

建议使用manually select eatures 手动安装

Eslint:代码质量检验工具

2.3 运行项目

npm run serve

 App running at:
  - Local:   http://localhost:8080/     //只能在本机运行
  - Network: http://172.18.1.33:8080/   //ip地址访问,可能通过手机直接访问

2.4 路由懒加载

router/index.js

//import Home from './home.vue'
import Home from './home.vue'


//路由懒加载
const Home=()=>import('./home.vue')

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

]

2.5 vuex运行机制

element step icon用啊 element

3.Vue后台管理技术选型

3.1 技术栈:Vue,Element UI/iview ui/vant ui ,Axios,Sass,ES6

3.2 B端和C端:

C端:customer,用户端,最终用户使用的,webApp,小程序,App,京东App,淘宝App

B端:business 后台管理-难度在于理解业务流程

3.3 分析一下典型的后台管理系统

  1. 简单:https://github.com/bailicangdu/vue2-manage
  2. 中等:
  3. 复杂:https://github.com/PanJiaChen/vue-element-admin
参考文档:https://panjiachen.github.io/vue-element-admin-site/zh/guide/

Mock:随机生成的假数据

3.4 经典的前端工程目录结构

element step icon用啊 element

3.4 后台管理启动

技术栈:vue,element ui,axios,sass
安装依赖
  1. 安装Element UI:vue add element
? How do you want to import Element? Fully import   //全部安装还是按需安装
? Do you wish to overwrite Element's SCSS variables? No   //不覆盖sass变量
? Choose the locale you want to load zh-CN   //你使用的本地语言:zh-CN  中文

禁用ESlint:

项目根目录下创建vue.config.js module.exports = { lintOnSave:false }

  1. 清理项目中无用的代码和文件
  2. Login组件
  1. 布局问题
  1. 高度没有撑开
reset.css
html,body {
    height:100%;
}

app.vue
#app {
  height: 100%;
}
  1. 重置样式:https://meyerweb.com/eric/tools/css/reset/
  1. 添加Element 表单组件

element step icon用啊 element

  1. 给登录表单绑定数据:
第一步:给el-form添加model属性绑定表单数据对象
		  <el-form :model="loginForm"></el-form>
第二步:在data属性中添加数据对象
      export default {
        name: "login",
        data() {
            return {
                loginForm:{
                    username:'张三',
                    password:'123'
                }
            }
        }
      };
      
 第三步: 给具体的表单元素用v-model绑定
  			<el-form-item>
          <el-input v-model="loginForm.username"></el-input>
        </el-form-item>
  1. 用户名和密码的验证规则
第一步:给el-form添加rules属性绑定表单数据对象
		  <el-form :model="loginForm" :rules="validateRules"></el-form>
第二步:在data属性中添加数据对象
      export default {
        name: "login",
        data() {
            return {
               //验证表单规则
      validateRules: {
        username: [
            { required: true, message: "请输入用户名", trigger: "blur" },
            { min: 5, max: 15, message: "长度在 5 到 15 个字符", trigger: "blur" },
          ],
          password: [
            { required: true, message: "请输入密码", trigger: "change" },
            { min: 6, max: 25, message: "密码长度在 6到 25 个字符", trigger: "blur" },
          ],
        },
            }
        }
      };
      
 第三步: 给具体的表单元素用prop属性关联
 例如:
  		 <el-form-item prop="username">
          <el-input v-model="loginForm.username"></el-input>
        </el-form-item>
  1. 点击登录按钮调接口完成登录
电商后台接口基地址:
   1. https://www.liulongbin.top:8888/api/private/v1
   2. http://www.ysqorz.top:8888/api/private/v1/      //每天夜里2点会重置为最原始数据