JS-API(Pangea3.0 扩展)
我们将 Pangea3.0 脚手架中的部分能力传入到了低代码引擎,使在编写页面 js 时可直接使用。
特别注意
为保证 Pangea3.0 各系统页面的兼容性,扩展 JS-API 由盘古团队统一添加。需要添加扩展 API 可联系盘古团队。
全局数据
获取用户信息 getUserInfo
该方法用于获取登录人员信息对象数据,包含用户账号、用户名等信息。
js
function action(ctx) {
const userObj = ctx.injected.getUserInfo();
}
获取头部信息 getHttpHeaders
该方法用于获取 token, Authorization, current_id, default_language 等 header 中的传参信息
js
function action(ctx) {
const headers = ctx.injected.getHttpHeaders();
}
获取语言种类 getLangList
该方法用于获取当前系统的语言种类数据
js
function action(ctx) {
const headers = ctx.injected.getLangList();
}
全局动作
路由跳转 navigateTo
该方法用于跳转页面
js
function action(ctx) {
ctx.injected.navigateTo(path, params);
}
path
路由路径; params
路由参数;
关闭当前标签页 closeCurrentTab
该方法用于关闭当前标签页
js
function action(ctx) {
ctx.injected.closeCurrentTab();
}
关闭指定标签页 closeTargetTab
该方法用于关闭指定标签页
js
function action(ctx) {
ctx.injected.closeTargetTab(tabKey);
}
tabKey
标签页的key(也是标签页的路由路径)
关闭所有标签页(仅用于 pc 端) closeAllTab
该方法用于关闭所有标签页
js
function action(ctx) {
ctx.injected.closeAllTab();
}
监听事件(仅用于pc) onEvent
该方法用于监听某个事件
js
function action(ctx) {
ctx.injected.onEvent(eventName, callback);
}
eventName
监听的事件名称; callback
事件触发时的回调函数;
触发事件 emitEvent
该方法用于触发某个事件
js
function action(ctx) {
ctx.injected.emitEvent(eventName, params);
}
eventName
触发的事件名称; params
触发事件时传递的参数,上方onEvent的callback回调函数中会接收到;
取消监听事件 offEvent
该方法用于取消监听某个事件
js
function action(ctx) {
ctx.injected.offEvent(eventName);
}
eventName
取消监听的事件名称;
工具方法
获取 url 参数 getUrlParam
该方法用于获取 url 参数
js
function action(ctx) {
const value = ctx.injected.getUrlParam(name);
}
name
参数名称;
日期格式换 dateFormat
该方法用于对日期数据进行格式化
js
function action(ctx) {
const date = ctx.injected.dateFormat(date, formatStr);
}
date
日期值可为日期字符串,日期对象,时间戳等,也可为 null,为 null 时获取当前日期进行格式化
formatStr
格式化字符串,例如:YYYY-MM-DD
流数据文件下载download
该方法用于处理流数据为下载文件
js
function action(ctx) {
ctx.injected.download(blobData, fileName);
}
blobData
接口返回的 blob 数据
fileName
文件名,例如:多语言.xlsx
国际化渲染函数 showAlias
该方法用于国际化数据渲染
js
function action(ctx) {
ctx.injected.showToast(intlKey);
}
intlKey
国际化key值
设置当前系统国际化数据 setLocalMessage
该方法用于关闭全局提示信息
js
function action(ctx) {
ctx.injected.setLocalMessage(intlValues);
}
intlValues
国际化列表数据
js
[{
languageKey: "国际化key",
displayName: "国际化值"
},...]