Palantir Foundry Workshop仪表盘:添加上/下/随机元素按钮方案咨询
在Palantir Foundry Workshop实现Filter列表的导航按钮功能
完全可以实现你要的上一个、下一个及随机选择元素的功能,具体操作步骤如下:
1. 配置基础变量
- 打开Workshop的Variables面板,创建两个变量:
string类型变量(命名为currentSelectedValue):用来存储当前选中的filter值list<string>类型变量(命名为allFilterOptions):用来存储filter-list的所有可选值
- 将
allFilterOptions绑定到你的filter-list数据源(比如从目标数据集的对应属性中提取所有唯一值) - 将
currentSelectedValue绑定到filter-list的当前选中值
2. 添加按钮并配置点击逻辑
在仪表盘插入三个按钮组件,分别命名为「上一个」「下一个」「随机选择」,为每个按钮设置On Click动作:
「上一个」按钮逻辑
使用Set variable动作,把currentSelectedValue设为:
if(indexOf(allFilterOptions, currentSelectedValue) == 0, last(allFilterOptions), allFilterOptions[indexOf(allFilterOptions, currentSelectedValue) - 1])
逻辑说明:如果当前选中的是第一个元素,就跳转到最后一个;否则选中当前元素的前一个。
「下一个」按钮逻辑
使用Set variable动作,把currentSelectedValue设为:
if(indexOf(allFilterOptions, currentSelectedValue) == length(allFilterOptions) - 1, first(allFilterOptions), allFilterOptions[indexOf(allFilterOptions, currentSelectedValue) + 1])
逻辑说明:如果当前选中的是最后一个元素,就跳转到第一个;否则选中当前元素的后一个。
「随机选择」按钮逻辑
使用Set variable动作,把currentSelectedValue设为:
sample(allFilterOptions, 1)[0]
逻辑说明:从所有可选值中随机选取一个。
3. 关联变量与Filter组件
回到你的filter-list组件,将它的Selected value绑定到currentSelectedValue变量,这样按钮修改变量值时,filter的选中状态会自动同步,数据集的过滤结果也会随之更新。
4. 测试验证
保存并预览仪表盘,点击三个按钮,检查filter-list的选中值是否按预期切换,同时确认数据集的过滤结果同步生效。
内容的提问来源于stack exchange,提问作者gcami
相关产品推荐
相关产品推荐

