在分享或者嵌出场景中,用户打开一个页面,我们希望能默认对数据进行筛选,如仅展现本部门的数据; 腾讯云 BI 通过在 URL 中加入参数,用参数和页面组件进行数据交互。
前置条件:
通过本文档,您将了解:
如何构建单个参数
如何构建多个参数
单个参数构建
1. 获取参数名:通过页面参数功能,获得参数名;
如上图,我们获得“type”参数名。
2. 组装参数体:使用以下格式,组装需要传递的参数;
/* 格式 */value=${参数值}&target=${参数名称}/* 例如,下面的例子,相当于 province=上海市 */value=上海市&target=province
3. url 转码:
在无编码环境下,也可以简单的以下面的格式处理:
/* 格式 */params[]=value=${参数值}%26target%3D${参数名}/* 例如,下面的例子,相当于 province=上海市 */params[]=value=上海市%26target%3Dprovince
大部分浏览器支持中文转码,如无法自动转码,可自行搜索在线urlEncode工具进行转码:
如使用代码批量生成链接,可使用encodeURIComponent方法对参数体进行编码:
//encodeURIComponent 为url格式转换函数const str1 = `value=上海市&target=province`const paramsStr1 = `params[]=${encodeURIComponent(str1)}`
4. 参数多值的处理:如一个参数有多个值,则可以使用","分割不同的值。
/* 例如,下面的例子,相当于 province=上海市 或 广东 或 陕西 */params[]=value=上海市,广东,陕西%26target%3Dprovince
多个参数构建
在需要传多个参数时,只需要在单个的基础上,按照如下格式构建即可:
/* 格式 */params[]=value=${参数值}%26target%3D${参数1}¶ms[]=value=${参数值}%26target%3D${参数2}/* 例如,下面的例子,相当于 province=上海市 & department=运营部 */params[]=value=上海市%26target%3Dprovince¶ms[]=value=运营部%26target%3Ddepartment