<!--
 * @Descripttion:
 * @Author: YuZhenJing
 * @Date: 2020-02-10 17:44:34
 * @LastEditors: YuZhenJing
 * @LastEditTime: 2020-05-13 20:03:31
 -->

# asm-client

## asm-client 是什么

- asm-client 是总控框架提供的工具库,封装了总控相关和一些常用的一些工具类库,便于业务系统集成总控框架

## asm-client 安装

```
 npm i asm-client --save
```

## asm-client 使用

- asm-client 初始化

```js
import AsmClient from 'asm-client'
Vue.use(AsmClient)
```

- \$html 拦截规则配置方法

```js
/**
 * 请求配置，集成总控必备参数
 * @param {*} config
 */
AxiosRule.interceptorsRequestUse(config)
//实例：
const service = axios.create()
service.interceptors.request.use(
  config => {
    return AxiosRule.interceptorsRequestUse(config)
  },
  err => {
    return Promise.reject(err)
  }
)

/**
 * 响应配置,返回Promise
 * @param {*} res 返回结果
 * @param {*} redirectUrl 跳转回调
 * @param {*} dialog 提示回调
 */
AxiosRule.interceptorsResponseUse(res, redirectUrl, dialog)
/**
 * 响应失败，返回reject
 * @param {*} err 错误信息
 * @param {*} redirectUrl 跳转回调
 * @param {*} dialog 提示回调
 */
AxiosRule.interceptorsResponseUseErr(err, redirectUrl, dialog)
//实例：
service.interceptors.response.use(
  res => {
    return AxiosRule.interceptorsResponseUse(res, redirectUrl, dialog)
  },
  err => {
    return AxiosRule.interceptorsResponseUseErr(err, redirectUrl, dialog)
  }
)
```

- \$auth 用户授权信息

```js
//缓存总控路径信息
this.$auth.hostUrl
//缓存功能清单信息
this.$auth.menuInfo
//缓存令牌信息
this.$auth.token
//缓存登录用户信息
this.$auth.userInfo
//缓存主题
this.$auth.themeObj
//清除缓存信息
this.$auth.clearCache
```

- \$points 功能点授权

```js
//根据功能点权限，控制页面功能是否可用
this.$points.permission
```

- \$objTools 对象处理工具

```js
//克隆对象
this.$objTools.cloneObj(data)
//数据字典对象转数组
this.$objTools.dicToArray(data)
```

- line-awesome 图标库

```js
import 'asm-client/lib/asm-style/line-awesome/css/line-awesome.min.css'
```

- 内置重置样式

```js
import 'asm-client/lib/asm-style/reset/index.css'
```

## License

[MIT](http://opensource.org/licenses/MIT)

Copyright (c) 2020-present, Jenkin Yu
