0

我根据官方文档创建了一个自定义 ReactiveComponent:https ://docs.appbase.io/docs/reactivesearch/v3/advanced/reactivecomponent/

这工作正常,但是当我使用组件并清除自定义组件的过滤器时,如何更新自定义组件的 ui 状态?

使用文档中的示例:清除颜色过滤器时,如何更新 ColorPicker UI 状态以反映未选择颜色?

在文档中没有找到与此相关的任何内容。

4

2 回答 2

0

万一其他人遇到同样的问题:如果您清除过滤器,则渲染道具包含一个值对象,该对象设置为 null。这样可以有条件地更新 ColorPicker UI 状态(或您使用的任何自定义组件)。

于 2020-08-17T16:23:44.780 回答
0

如果我明白你需要使用通过渲染道具来的价值。

这是我项目中的一个示例用法

 render={({ data, handleChange, value }) => {
                return (
                  <div
                    role="listbox"
                    aria-label="SpecialCategoryFilter-items"
                    className="list-filter"
                  >
                    {data.map((item) => (
                      <p
                        className="button-large-item"
                        key={item.key}
                        role="option"
                        aria-checked={value[item.key] ? true : false}
                        aria-selected={value[item.key] ? true : false}
                      >
                        <input
                          style={{ display: "none" }}
                          type="checkbox"
                          value={item.key}
                          onChange={(e) => {
                            handleChange(e);
                          }}
                          id={"SpecialCategoryFilter-" + item.key}
                          name={"SpecialCategoryFilter-" + item.key}
                        />
                        <label
                          htmlFor={"SpecialCategoryFilter-" + item.key}
                        >
                          <span>{item.key}</span>
                        </label>
                      </p>
                    ))}
                  </div>
                );
              }}
于 2021-02-22T22:21:25.623 回答