我有一个用于反应选择的数组,如下所示
[{label:"blue",value:"blue"},{label:"green",value:"green"},{label:"other",value:"other"}]
当用户尝试搜索蓝色和绿色(例如棕色,紫色)以外的其他选项时,应该在选项列表中显示该其他选项,以便用户可以选择“其他”
有什么方法可以在react-select中实现此功能
答案 0 :(得分:0)
我认为您正在寻找与this post接近的地方。
基本上像这样使用let webViewTapped = UITapGestureRecognizer(target: self, action: #selector(self.tapAction(_:)))
webViewTapped.numberOfTapsRequired = 1
webViewTapped.delegate = self
webView.addGestureRecognizer(webViewTapped)
@objc func tapAction(_ sender: UITapGestureRecognizer?) {
print("touched")
// Get the specific point that was touched
let point: CGPoint? = sender?.location(in: view)
webView.evaluateJavaScript("document.getElementById(\"hdfUserId\").value") {(response, error) in
if (response != nil) {
let title = response as! String
print(title)
}
// error handling
}
}
道具:
filterOption
这是一个符合您要求的live example。
答案 1 :(得分:0)
上述解决方案的一个小问题。 搜索变得区分大小写。解决很简单:
filterOption = (option, inputValue) => {
const inputValueToUpperCase = inputValue.toUpperCase();
if (option.label === "Other") {
const { options } = this.state;
const result = options.filter(opt => opt.label.toUpperCase().includes(inputValueToUpperCase));
this.setState({ hasExtraValue: !result.length });
return !result.length;
}
return option.label.toUpperCase().includes(inputValueToUpperCase);
}
那样适合。我希望能帮助其他人。
这是一个符合您要求的live example。