产品资料库

shaun-sheep b732607507 资料库- “从已有数据填充产品” 点击提示产品设计中 4 éve
build 4ed86052dd '初始配置' 4 éve
config 4ed86052dd '初始配置' 4 éve
src b732607507 资料库- “从已有数据填充产品” 点击提示产品设计中 4 éve
static 4ed86052dd '初始配置' 4 éve
.babelrc 4ed86052dd '初始配置' 4 éve
.editorconfig 4ed86052dd '初始配置' 4 éve
.gitignore 4ed86052dd '初始配置' 4 éve
.postcssrc.js 4ed86052dd '初始配置' 4 éve
README.md 0feb143ee7 '修改项目文档' 4 éve
index.html 4ed86052dd '初始配置' 4 éve
package.json c056f3a778 修改 添加产品,修改产品 4 éve
publish.js 4ed86052dd '初始配置' 4 éve

README.md

sagacloud-admin

A Vue.js project

Build Setup

npm install
npm install vuex axios element-ui echarts font-awesome
npm install less less-loader node-sass sass-loader --save-dev

# serve with hot reload at localhost:8080
npm run dev
# build for production with minification
npm run build
# build for production and view the bundle analyzer report
npm run build --report

项目结构说明

目录结构

│  .editorconfig                        # 格式化配置,修改缩进为2
│  index.html                           # 修改页面title
│  package.json                         # 包
│  README.md                            # 说明文档
│
├─build                                 # 不变
│
├─config
│      dev.env.js                       # 开发环境变量
│      index.js                         # 设置代理
│      prod.env.js                      # 生产环境变量
│
├─src
│  ├─api                                # 业务逻辑api, http的请求都放在这里
│  │  |─framework.js                    # 框架预留接口,实现登录,权限校验等功能
│  │  └─httputils.js                    # http 工具类
│  ├─assets                             # 静态资源, 替换logo图片
│  ├─components                         # 业务相关组件
│  ├─data                               # 业务相关静态数据
│  │      menus.js                      # 菜单数据
│  ├─framework                          # 框架主目录
│  │  ├─components                      # 业务无关组件
│  │  │
│  │  ├─layout                          # 框架主目录
│  │  │      Login.vue                  # 登录页
│  │  │      Main.vue                   # 框架主页
│  │  │      PageHeader.vue             # 顶部栏
│  │  │      PageSidebar.vue            # 左侧菜单栏
│  │  │
│  │  ├─plugins                         # 插件,业务无关
│  │  │      components.js
│  │  ├─style                           # 样式
│  │  │
│  │  ├─template                        # 页面模板
│  │  │      TablePageTemplate.vue
│  │  │
│  │  └─utils                           # 工具类,业务无关
│  │
│  ├─router                             # 主路由
│  │      index.js
│  │      system.js
│  │
│  ├─store                              # vuex
│  │      index.js
│  │
│  └─views                              # 业务页面主路径
|
└─static
        .gitkeep

/api/framework.js

必须实现以下方法

export default {

    // 路由拦截
    routerBeforeEach: async function(to, from, next){},

    // 获取左侧菜单数据
    getMenus: function(permissions){},

    // 跳转到登录页面
    toLoginPage: function(){},

    // 登录接口
    login: function(username, password){}

    // 加载当前登录用户信息
    loadUserInfo: function(){},

    // 退出登录
    toLogout: function(){}
}

工具类说明

/src/api/httputils.js // 一般在服务端接口 API 中使用,不建议在别的地方使用,有授权标记

    getCookie(name)                    // 获取cookie值
    getJson(url, params)               // 发送GET请求
    postJson(url, data)                // 发送POST请求

/src/utils/storage.js

    set(key, value, fn)                // 在浏览器缓存中设置数据, 如果value是对象会转化成json
    get(key, fn)                       // 在浏览器缓存中取出数据, 取出数据后会尝试js对象返回
    remove(key)                        // 在浏览器缓存中删除数据

设置面包屑方法

在路由router中配置meta.breadcrumbs,在进入路由页面时会自动解析为面包屑
this.$store.dispatch('setBreadcrumb', [{ label: 'Demo' }, { label: 'Form'  ])
this.$store.dispatch('setBreadcrumb', [{ label: 'Demo', path: '' }, { label: 'Form' , path: ''}])