小编Ahs*_*mal的帖子

具有多行的材质文本字段内的芯片

所以我使用这个 TagsInput 作为在codesandbox链接中共享的

https://codesandbox.io/s/material-ui-input-with-chips-0s2j4?from-embed=&file=/src/TagsInput.js

我面临的问题是,如果有很多芯片,那么芯片就会超出文本字段

我想做的是找到一种方法,让我可以拥有像多行文本字段这样的方法,这样如果碎片太多,它们就会像在自动完成中那样转到下一行。

export default function TagsInput({ ...props }) {
  const classes = useStyles();
  const { selectedTags, placeholder, tags, ...other } = props;
  const [inputValue, setInputValue] = React.useState("");
  const [selectedItem, setSelectedItem] = React.useState([]);
  useEffect(() => {
    setSelectedItem(tags);
  }, [tags]);
  useEffect(() => {
    selectedTags(selectedItem);
  }, [selectedItem, selectedTags]);

  function handleKeyDown(event) {
    if (event.key === "Enter") {
      const newSelectedItem = [...selectedItem];
      const duplicatedValues = newSelectedItem.indexOf(
        event.target.value.trim()
      );

      if (duplicatedValues !== -1) {
        setInputValue("");
        return;
      }
      if (!event.target.value.replace(/\s/g, "").length) return;

      newSelectedItem.push(event.target.value.trim()); …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs material-ui

4
推荐指数
1
解决办法
3791
查看次数

标签 统计

javascript ×1

material-ui ×1

reactjs ×1