山海鲸可视化的分享链接支持传入自定义参数,参数可以透传给数据源(目前支持 API 和使用 SQL 语句的数据库),数据源针对不同参数,返回不同的数据,就可以达到同一个大屏展示不同数据的效果。下面分别举例说明:
我们现在有一个 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 数据源需要对传参作相应处理,返回不同的数据,同时还需要保持数据结构不变。
现在数据库中有一个user 表,表中数据,如下图所示:
在山海鲸可视化中添加 SQL 语句,如下图所示:
3 个 SQL 语句,如下所示:
1 | select * from user where name = {name:'张三'} |
可以看出,这些 SQL 语句比较特殊,里面定义了参数和默认值,其中红色的为参数名,绿色的为默认值。
软件会根据大屏传过来的参数对 SQL 语句参数和默认值部分进行替换处理后,再进行查询。
如果大屏不传参数,则实际执行的 SQL 语句,如下所示:
1 | select * from user where name = '张三' |
如果大屏传参,参数为:
1 | name: 李四 |
则实际执行的 SQL 语句,如下所示:
1 | select * from user where name = '李四' |