【问题标题】:How can I reset a multiselect widget in Slate?如何在 Slate 中重置多选小部件?
【发布时间】:2022-12-14 23:35:47
【问题描述】:

我需要通过按钮小部件清除 multiSelect 小部件的选定值。我可以轻松地手动添加和删除不同的字段,但到目前为止我还无法让按钮起作用。这可能吗?

【问题讨论】:

    标签: palantir-foundry foundry-slate


    【解决方案1】:

    您需要为用户创建一个操作,以将所有字段重置为一组默认值。这里最简单的模式是定义一个 v_defaults 变量:

    { 
        "w_multiselectWidget_raw": ["a", "b"],
        "w_multiselectWidget_display": ["Alpha", "Beta"],
        "w_textInput": "default", ... 
    }
    

    然后,在每个小部件的配置中,在 json 定义中(在 </> 图标下),您可以模板化所选值属性的特定版本。

    对于除了原始值之外还具有显示值的任何小部件,请确保您模板化 selectedValuesselectedDisplayValues

    {
        ...
        selectedValues: "{{v_defaults.w_multiselectWidget_raw}}",
        selectedDisplayValues: "{{v_defaults.w_multiselectWidget_display}}",
        ...
    }
    

    最后一步是配置一个事件来触发对v_defaults变量的更新,这将导致依赖图更新所有下游节点,其中将包括所有具有模板化选择值的输入小部件,并且选择将返回到默认。

    const defaults = {
        "w_multiselectWidget_raw": {{v_multiSelect_raw}},
        "w_multiselectWidget_display": {{v_multiSelect_raw}},
        "w_textInput": {{v_textInput}},
        "entropy": {{v_entropy}}
        ...
    }
    
    return defaults
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-09
      • 1970-01-01
      • 1970-01-01
      • 2020-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-30
      相关资源
      最近更新 更多