二维项目制作、发布、私有化部署全流程免费,无任何限制 点击下载
大屏管理 组件介绍 数据源管理

如何通过传递参数让大屏展示不同的数据

2021-11-17 11:36:04
浏览 9279 次
您正在查看的是山海鲸旧版本教程,与山海鲸软件最新版本有很多不一致,请移步查看最新的教程 →_→ 山海鲸使用教程

摘要: 大屏分享之后的链接,可以通过添加传参,来做到显示不同的数据,本文介绍如果实现。 本文内容基于山海鲸可视化软件操作,您可先免费下载山海鲸可视化后再阅读本文。 下载山海鲸可视化软件

山海鲸可视化的分享链接支持传入自定义参数,参数可以透传给数据源(目前支持API和使用SQL语句的数据库),数据源针对不同参数,返回不同的数据,就可以达到同一个大屏展示不同数据的效果。下面分别举例说明:

1. 使用API数据源

我们现在有一个API数据源(http://test.shanhaibi.com/demo_params.php),返回结果如下:

我们用这个API数据源制作一个简单的大屏,托管后链接为 http://share.shanhaibi.com/share/param-demo/ ,如下:

 

如果访问大屏时加上参数 a=2&text=哈哈 ,则这个参数会透传给API,实际访问的API也会自动加上这些参数:

大屏链接: https://share.shanhaibi.com/share/param-demo/?a=2&text=哈哈

API 链接: http://test.shanhaibi.com/demo_params.php?a=2&text=哈哈

API返回结果如下:

这时候大屏的数据就会变成上面返回的数据,如下:

 

备注:API数据源需要对传参作相应处理,返回不同的数据,同时还需要保持数据结构不变。

2. 使用SQL语句的数据库(1.3.7版本开始支持)

现在数据库中有一个user表,表中数据如下:

在山海鲸可视化中添加SQL语句,如下:

3个SQL语句分别如下:

select * from user where name = {name:’张三‘}

select * from user where time>{start:0} and time<{end:1623772800}

select * from user where name like {name_like:’张%‘} and type={type:3}

可以看出,这些SQL语句比较特殊,里面定义了参数和默认值,其中红色的为参数名,绿色的为默认值。

软件会根据大屏传过来的参数对SQL语句参数和默认值部分进行替换处理后,再进行查询。

如果大屏不传参数,则实际执行的SQL语句分别为:

select * from user where name = ‘张三’
select * from user where time>0 and time<1623772800
select * from user where name like ‘张%’ and type=3

如果大屏传参,参数为

name: 李四

start: 1634428800

end: 1637116392

name_like: %三

type: 1

则实际执行的SQL语句分别为:

select * from user where name = ‘李四’
select * from user where time>1634428800 and time<1637116392
select * from user where name like ‘%三’ and type=1

 

threejs高级教程 大数据可视化引擎 智慧园区 什么是数据可视化 数据模型可视化 threejs动态加载模型 智慧旅游专业 视频可视化追溯系统 北京大数据可视化 智慧文旅

做数字孪生大屏,就用山海鲸

顶级视效 | 自由编辑 | 二次开发

免费下载