Appearance
全局对象状态管理
属性 | 说明 |
---|---|
Menu | 系统菜单,包含菜单的源信息,路径icon配置 |
Page | 页面对象,包含页面的URL参数。页面绑定的数据等 |
User | 用户对象,包含用户登录信息权限等 |
Dater | 是对dayjs工具函数的引用,可以处理各种时间相关的问题,详细使用文档可以官网查看dayjs官网 |
Tools | 包含了预置的各种工具函数。 |
Loading | element-plus中loading服务的引用。 |
Message | element-plus中message服务的引用。 |
Route | Vue路由。 |
Company | 可以获取当前公司配置的所有信息。 |
TurnToPage | 跳转页面,第一个参数为对象,formId 必传,可以设置 title 也可以添加其他属性, 第二个参数可以为路由指定查询参数。 |
G.Menu 菜单对象
内置属性 | 说明 |
---|---|
current | 当前菜单页数据。 |
opened | 已访问驻留的菜单页面。 |
G.Page 页面对象
内置属性 | 说明 |
---|---|
current | 当前页面数据。 |
opened | 已访问且驻留在内存的页面对象。 |
G.Loading 加载状态
js
//显示弹窗
const loading = this.G.Loading.service({
lock: true,
text: 'Loading',
background: 'rgba(0, 0, 0, 0.7)',
})
setTimeout(() => {
//关闭弹窗
loading.close()
}, 2000)
//显示弹窗
const loading = this.G.Loading.service({
lock: true,
text: 'Loading',
background: 'rgba(0, 0, 0, 0.7)',
})
setTimeout(() => {
//关闭弹窗
loading.close()
}, 2000)
其中 options
参数为 Loading 的配置项,具体见下表。 LoadingService 会返回一个 Loading 实例,可通过调用该实例的 close
方法来关闭它。 详情请看 elLoading
G.Message 消息提示
js
//一般提示
this.G.Message('this is a message.')
//完成提示
this.G.Message({
message: 'Congrats, this is a success message.',
type: 'success',
})
//警告提示
this.G.Message({
message: 'Warning, this is a warning message.',
type: 'warning',
})
//错误提示
this.G.Message.error('Oops, this is a error message.')
//一般提示
this.G.Message('this is a message.')
//完成提示
this.G.Message({
message: 'Congrats, this is a success message.',
type: 'success',
})
//警告提示
this.G.Message({
message: 'Warning, this is a warning message.',
type: 'warning',
})
//错误提示
this.G.Message.error('Oops, this is a error message.')
详情请看 elMessage
G.TurnToPage 页面跳转方法
G.TurnToPage(params,query)
- params 跳转到新页面并传递过去的数据
- query 地址参数
params 中必须有 formId 属性(就是跳转页面的pageId),params 参数的数据最终可在 G.Page.current
中获得。 params 中的 title 属性代表跳转过去后显示页面 tab 的标题文字,最多支持显示6个字符。 params 中的 detail 属性能设定跳转页面的 URL,值为一个数组。可按数组元素顺序生成 URL。比如值为 ['a','b','c'] 生成的 URL 就为 a/b/c
下面以列表的 link 组件 on_click 事件为例:
js
function(){
this.sopeData.row.title = this.sopeData.row.biaoTi.slice(0,6)
this.sopeData.row.detail = ['page','formId',this.sopeData.row.formId]
this.G.TurnToPage(this.sopeData.row,{t:new Date().getTime()})
}
function(){
this.sopeData.row.title = this.sopeData.row.biaoTi.slice(0,6)
this.sopeData.row.detail = ['page','formId',this.sopeData.row.formId]
this.G.TurnToPage(this.sopeData.row,{t:new Date().getTime()})
}
G.Tool 工具
内置方法 | 方法说明 | 参数 | 调用方式 | 返回 |
---|---|---|---|---|
SM4 | 国密4加密解密 | - | - | - |
SM4.encode | 加密 | param1:String | b64.encode(""明文"") | String |
SM4.decode | 解密 | param1:String | b64.decode(""密文"") | String |
b64 | base64加密解密 | - | - | - |
b64.encode | 加密 | param1:String | b64.encode(""明文"") | String |
b64.decode | 解密 | param1:String | b64.decode(""密文"") | String |
arrayToMapByKey | ||||
camelCase | 连字符转驼峰 | param1:String | camelCase('el-table') | String |
camelCaseObj | 转换带下划线的key为驼峰形式的key,param1为对象,param2表示是否为纯净版,即是否保留原来的参数值(key|value对) | param1:Object param2:any | camelCaseObj({""a_b"":100},1) | Object |
causeError | 抛出错误 | param1:string | causeError(""抛出错误"") | Error |
connectorCase | 驼峰转连字符 | param1:String | connectorCase('elTable') | String |
dater | ||||
emptyObject | 清空对象 | param1:Object | emptyObject(param1) | void |
filterANotInB | 返回对象1中没有对象2里的属性的内容 | param1:Object param2:Object | filterANotInB({a:1,b:2,c:3},{c:42}) | Object |
filterObjExclude | ||||
filterObjInclude | ||||
findIndex | 返回元素的数组下标 | param1:Array param2:string | number | findIndex([1,2,3,4],3) | Number |
getContext | ||||
getGlobalProperties | ||||
getQueryObject | 将url参数解析成对象 | param1:String | getQueryObject(""?a=1&b=2&t=23321"") | Object |
getQueryVariable | ||||
getRandomStr | 生成随机字符串 | param1:Number | getRandomStr(7) | String |
getSuffixName | 解析文件名与后缀 | param1:String | getSuffixName(""bg.jpg"") | String |
getToken | 获取token | getToken() | String | |
getTypeStr | ||||
interchange | ||||
isArray | 是否是数组 | param1:any | isArray(param1) | Boolean |
isBoolean | 是否是布尔值 | param1:any | isBoolean(param1) | Boolean |
isCustom | 是否包含custom | param1:any | isCustom(param1) | Boolean |
isDate | 是否是Date | param1:any | isDate(param1) | Boolean |
isEmptyArray | 是否是空数组 | param1:Array | isEmptyArray(param1) | Boolean |
isEmptyObject | 是否是空对象 | param1:Object | isEmptyObject(param1) | Boolean |
isExternal | 是否是链接地址 | param1:String | isExternal(param1) | Boolean |
isFunction | 是否是函数 | param1:any | isFunction(param1) | Boolean |
isIcon | 字符是否包含icon- | param1:String | isIcon(param1) | Boolean |
isLocal | 取非isExternal并且非isCustom | param1:String | isLocal(param1) | Boolean |
isNumber | 是否是数字 | param1:any | isNumber(param1) | Boolean |
isObject | 是否是对象 | param1:any | isObject(param1) | Boolean |
isRegExp | 是否是正则 | param1:any | isRegExp(param1) | Boolean |
isString | 是否是字符串 | param1:any | isString(param1) | Boolean |
isSymbol | 是否是symbol | param1:any | isSymbol(param1) | Boolean |
loadJS | 动态加载外部JS文件 | |||
lowerCaseObj | ||||
mapToArray | 对象转数组 | param1:Object | mapToArray({a:1,b:2,c:3}) | Array |
pathCompile | ||||
removeArrayValue | 删除数组中的元素 | param1:Array param2:any | removeArrayValue([1,2,3],3) | Array |
removeSurplusSpace | 删除字符多余的空格 | param1:String | removeSurplusSpace("abc d") | String |
removeToken | ||||
resetToken | ||||
setToken | ||||
setTokens | ||||
turnToString | ||||
underlineCase | 驼峰转连字符 | param1:String | underlineCase("abc") | String |
upperFirst | 首字母大写 | param1:String | upperFirst("abc") | String |
validAlphabets | 验证是否是没有特殊符号的字符 | param1:String | validAlphabets("abc") | Boolean |
validEmail | 验证邮箱地址 | param1:String | validEmail("liti@163.com") | Boolean |
validLowerCase | 验证是否全小写 | param1:String | validLowerCase("abc") | Boolean |
validURL | 验证是否是URL | param1:String | validURL("http://xxx.xxx.xx") | Boolean |
validUpperCase | 验证是否全大写 | param1:String | validUpperCase("ABC") | Boolean |
validUsername |