操作文档
首页
  • 智能网关系列入门
  • 配置软件使用说明
  • 智能网关系列入门(新)
  • 配置软件使用说明(新)
  • 云平台使用说明
  • 云组态使用说明
  • 数据分析使用说明
  • Box系列使用说明
  • MQTT接入
  • BOXConfig使用教程(新)
  • 云平台使用教程
  • 报表设计器使用教程
  • BOXConfig使用教程
开发者平台
  • 硬件相关
  • 配置软件相关
  • 平台相关
  • 远程编程相关
  • 组态设计相关
  • 报表相关
  • 第三方BOX相关
  • BoxConfig相关
私有化平台
更新记录
首页
  • 智能网关系列入门
  • 配置软件使用说明
  • 智能网关系列入门(新)
  • 配置软件使用说明(新)
  • 云平台使用说明
  • 云组态使用说明
  • 数据分析使用说明
  • Box系列使用说明
  • MQTT接入
  • BOXConfig使用教程(新)
  • 云平台使用教程
  • 报表设计器使用教程
  • BOXConfig使用教程
开发者平台
  • 硬件相关
  • 配置软件相关
  • 平台相关
  • 远程编程相关
  • 组态设计相关
  • 报表相关
  • 第三方BOX相关
  • BoxConfig相关
私有化平台
更新记录
  • 新手指引
  • 平台简介

  • 开发者后台

  • API文档

  • 示例教程

    • 综合示例
    • 平台内置前端代码开发
    • 更改内置界面风格样式
    • 更改内置菜单名称和位置
    • 搭建并上传自定义前端代码
    • 自定义接口配置代理及应用
    • 自定义业务和用户企业项目建立关联
    • 添加自定义系统菜单及获取用户token信息
      • 业务概述:
      • 最终效果图:
      • 实现流程
      • 资源下载
    • 添加自定义项目菜单及获取项目信息
    • 使用webhook拦截系统业务事件
    • 响应数据推送事件
    • 手动获取超级管理员token及应用
    • 系统菜单前端添加自定义页面按钮权限
    • 项目菜单前端添加自定义页面按钮权限
    • 添加自定义操作日志到平台
  • 常见问题

  • 开发者平台
  • 示例教程
2022-09-20
目录

添加自定义系统菜单及获取用户token信息

# 业务概述:

该示例演示了如何获取当前登录用户token、如何使用js-sdk调用平台接口,并将前端界面添加到一个自定义系统菜单中。

# 最终效果图:

# 实现流程

  1. 创建自定义系统菜单 0.1.创建自定义一级分类系统菜单 0.2.创建自定义二级嵌入类型系统菜单 0.3.通过平台菜单访问扩展模块
  2. 修改vue页面,使用ElementPlus进行页面UI搭建。
  3. 获取当前登录用户token。 2.1. 当自定义项目模块通过菜单嵌入到平台时,那么就会以URL参数的方式将当前登录用户的token传入。(具体格式为:192.168.1.XX/demo/testDemo?token=XXX) 获取方式:
new URLSearchParams(window.location.search).get("token"); //获取URL,参数中的用户token信息
1
  1. 引入SDK-API并将当前登录用户token加入全局。 注意:不同语法的SDK具有不同的目录结构以及不同的调用方式该方式为JavaScript语法 3.2. 将用户token加入到全局中。(sdk-js中将token加入全局语法/方法:

    //引入设置全局token
        import { ApiClient } from "XXX/src/ApiClient"; 
    //将用户token加入全局,可在vue的onMounted方法中使用
        ApiClient.instance.setAccessToken(new URLSearchParams(window.location.search).get("token"));
    
    1
    2
    3
    4
  2. 调用接口并渲染至前端UI。 4.1. 引入需要调用的平台接口API对象。

    //引入需要调用的平台接口API对象
         import {ProjectBoardFilterGroupApi} from 'XX/XXX/ProjectBoardFilterGroupApi';
    
    1
    2

    4.2. 初始化API对象,在setup/方法内 中定义变量值为具体的Api对象 new XXXApi();

     //声明Api对象调用接口
         const projectBoardFilterGroupApi = new ProjectBoardFilterGroupApi();
    
    1
    2

    4.3. 调用API对象中的方法并将返回参数设置到vue属性中并进行渲染。

    //查询地区方法。
      queryAreaList(){
        //传入必需参数。
        projectBoardFilterGroupApi.getProjectBoardFilterValueList("0","0").then(res =>{
          //res为返回参数。
          //判断是否调用成功。
          if(res?.code === "000000"){
            //将返回数据赋值到定义的属性中,在渲染至页面。
            state.treeData = res?.data;
          }else{
            //接口调用不成功,使用 ElementUi的提示框将错误信息渲染。
            ElMessage.error({message:res.msg});
          }
        });
      },
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    提示:报修模块为扩展模块因此平台提供的SDK-API中将不会存在报修接口以axios方式代替亦可将axios报修方法进行封装后调用

      //通过传入的项目Id,查询对应的报修数据
        axios.post("http://192.168.1.14/repairDemo/repair/queryList", projectIds).then(res => { //请求前缀为,代理配置路径
          //判断是否调用成功
          if (res?.data?.code === "000000") {
            //将查询出的报修数据,赋值给属性 tableData中
            state.tableData = res?.data?.data;
          } else {
            ElMessage.error({ message: res?.data?.msg });
          }
        });
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
  3. 完善企业报修前端模块并打包部署。

最终效果展示:

# 资源下载

自定义项目源码下载 (opens new window)

自定义业务和用户企业项目建立关联
添加自定义项目菜单及获取项目信息

← 自定义业务和用户企业项目建立关联 添加自定义项目菜单及获取项目信息→

最近更新
01
菜单栏里找不到“BOX配置”如何处理
06-06
02
购买了新型号的BOX,在配置软件里找不到该型号
06-06
03
部分电脑安装BoxConfig后无法运行
06-06
更多文章>
Copyright © 2021-2024
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式