【发布时间】:2020-12-27 05:44:46
【问题描述】:
我正在使用 Material Ui 自动完成组件。我希望当用户输入某些内容但没有得到任何结果时,noOptionsText 会显示一个可以单击以执行某些操作的按钮:
import React from "react";
import TextField from "@material-ui/core/TextField";
import Autocomplete from "@material-ui/lab/Autocomplete";
import Button from "@material-ui/core/Button";
export default function App() {
return (
<Autocomplete
options={["HELLO", "HI"]}
renderInput={(params) => (
<TextField {...params} label="Combo box" variant="outlined" />
)}
noOptionsText={
<Button onClick={() => console.log("CLICK SUCCESSFUL")}>
No results! Click me
</Button>
}
/>
);
}
这里按钮显示成功,但是当我点击它时,自动完成功能在按钮接收点击之前关闭。
如果我设置debug={true} 强制保持菜单打开,它会起作用,但这会产生许多其他副作用。
也试过强制open={true},但它仍然被关闭。
你会怎么做?
Codesandbox 演示:https://codesandbox.io/s/vigilant-haslett-sngyb?file=/src/App.js
【问题讨论】:
标签: reactjs material-ui