URL 页面参数构建

最近更新时间:2024-07-15 09:41:01

我的收藏
在分享或者嵌出场景中,用户打开一个页面,我们希望能默认对数据进行筛选,如仅展现本部门的数据; 腾讯云 BI 通过在 URL 中加入参数,用参数和页面组件进行数据交互。

前置条件:
本文仅介绍 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}&params[]=value=${参数值}%26target%3D${参数2}

/* 例如,下面的例子,相当于 province=上海市 & department=运营部 */
params[]=value=上海市%26target%3Dprovince&params[]=value=运营部%26target%3Ddepartment