1.3.1 • Published 4 years ago

embed-bi v1.3.1

Weekly downloads
-
License
ISC
Repository
-
Last release
4 years ago

Embed-BI

嵌入应用控制模块

基本用法

安装

npm install embed-bi

or

yarn add embed-bi

初始化

new Embed(dom, options, created)

options

参数说明类型必须
groupId嵌入的项目IdStringtrue
dashboardId嵌入的仪表盘IdStringtrue
host嵌入的host,目前默认是alpha环境 http://alpha-dashboard.gridsumdissector.comStringfalse
width嵌入窗口的宽度,不传则默认100%Numberfalse
height嵌入窗口的高度,不传则默认100%Numberfalse
token用于SSO权限验证的tokenString与publishID二选一
publishID发布仪表盘的ID, 使用publishID可以无需SSO的tokenString与token二选一
authParam需要第三方鉴权时传入的权限验证的参数Objectfalse
import Embed from 'embed-bi';

let embed = new Embed(document.querySelector('#iframe-container0'), {
    groupId: '12345',
    dashboardId: '12345',
    width: 1000,
    height: 800,
    publishId: 'string',
    authParam: {}
}, () => {
    embed.toggleNavbar(false);
});

带第三方鉴权的流程

可用的API

方法名说明参数
registerTokenHandle注册监听token是否过期的回调Function
setTheme设置主题String
toggleNavbar控制navbar的显示Boolean
setDashboardFilter设置仪表盘过滤[filterItem]
getDashboardFilter获取仪表盘过滤
setWidgetFilter设置组件过滤[filterItem]
getWidgetFilter获取组件过滤
getFrameHeight获取嵌入页面高度
changeGridHeight当父页面的可视区下限改变时,通过该接口告知iframe内部进行懒加载Number 可视区下限Y坐标

filterItem结构见文档:FilterItem 类

权限监听回调

embed.registerTokenHandle((req, res) => {
    let {isValid} = req.body;
    console.log('页面token是否有效:', isValid);
    return res
});

设置主题

embed.setTheme('theme-dark').then(res => {
    console.log(res);
}, err => {
    console.log(err);
});

显示/隐藏导航栏

embed.toggleNavbar(false)

仪表盘级别过滤

embed.setDashboardFilter({
     filterRules
});

embed.getDashboardFilter().then(res => {
    console.log('获取返回的仪表盘过滤值: ', res);
}, err => {
    console.log('获取失败', err);
});

组件级别过滤

 
embed.setWidgetFilter({
	widgetId: '3216aa14-3bb5-4695-4b8b-2cc91ca89a69',
    filterRules
}).then(res => {
    console.log('设置过滤值成功: ', res);
}).then(err => {
    console.error('设置过滤失败: ',  err);
}
 
embed.getWidgetFilter().then(res => {
    console.log('获取返回的组件过滤值: ', res);
}).then(err => {
    console.error('获取组件过滤值失败: ',  err);
}
 

获取嵌入页面高度

embed.getFrameHeight().then(res => {
    console.log(res.body);
});

触发内部懒加载

window.addEventListener('scroll', () => {
    embed.changeGridHeight(
        window.pageYOffset + document.documentElement.clientHeight
    );
});
1.3.1

4 years ago

1.3.0

4 years ago

1.2.1

4 years ago

1.2.0

4 years ago

1.1.4

5 years ago

1.1.3

5 years ago

1.1.2

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago