我使用的MUIAutocomplete
组件,我试图找出是否有可能移动芯片/标签之外的输入框。这甚至可能吗?我更愿意将筹码列在盒子下方。这样,文本框可以单独用于用户输入,而不是同时显示筹码/标签和用户输入。
我曾尝试玩其中一个基本演示,但没有任何运气。我把它清除回默认状态,以防这里有一些用户有这方面的经验。示例的起点可以是以下沙箱
https://codesandbox.io/s/material-demo-forked-7vroo?file=/demo.js
我使用的MUIAutocomplete
组件,我试图找出是否有可能移动芯片/标签之外的输入框。这甚至可能吗?我更愿意将筹码列在盒子下方。这样,文本框可以单独用于用户输入,而不是同时显示筹码/标签和用户输入。
我曾尝试玩其中一个基本演示,但没有任何运气。我把它清除回默认状态,以防这里有一些用户有这方面的经验。示例的起点可以是以下沙箱
https://codesandbox.io/s/material-demo-forked-7vroo?file=/demo.js
您可以通过禁用内部标签呈现Autocomplete
并Chip
在Autocomplete
.
const [value, setValue] = useState([]);
const onDelete = (title) => () => {
setValue((value) => value.filter((v) => v.title !== title));
};
return (
<Box sx={{ width: 500 }}>
<Autocomplete
multiple
options={top100Films}
defaultValue={[top100Films[13]]}
getOptionLabel={(option) => option.title}
value={value}
onChange={(e, newValue) => setValue(newValue)}
renderTags={() => null}
renderInput={(params) => (
<TextField {...params} variant="outlined" placeholder="Favorites" />
)}
/>
<Box
mt={3}
sx={{
'& > :not(:last-child)': { marginRight: 1 },
'& > *': { marginBottom: 1 },
}}
>
{value.map((v) => (
<Chip key={v.title} label={v.title} onDelete={onDelete(v.title)} />
))}
</Box>
</Box>
);
const top100Films = [
{ title: "The Shawshank Redemption", year: 1994 },
{ title: "The Godfather", year: 1972 },
]