【问题标题】:React - Drop down list on typing specific character in input field(example - {{ or @ )React - 在输入字段中键入特定字符的下拉列表(示例 - {{ 或 @ )
【发布时间】:2021-12-30 13:19:33
【问题描述】:

当用户在输入文本区域中输入特定字符(如“@”或“{{ }}”)时,我需要显示一个列表或下拉列表,从中可以选择一个选项,然后在文本区域中使用。 React.js 中是否有任何特定的库?或者在 React 中有什么简短的解决方案?

【问题讨论】:

  • 请编辑问题以将其限制为具有足够详细信息的特定问题,以确定适当的答案。

标签: javascript reactjs material-ui dropdown mdbreact


【解决方案1】:

您可以监视来自文本区域的输入并使用正则表达式检查特定字符。使用在 true 时安装带有建议的组件的状态。选择一个选项会将其插入文本并将安装状态设置为 false。点击离开应该做同样的事情(并且 MUI 包括一个点击离开监听器帮助组件)。

这里有一个小演示作为概念验证:https://codesandbox.io/s/magical-browser-dk981?file=/src/App.tsx

注意:我使用 Recoil 来管理共享状态,因为我真的很喜欢它。如果不想使用 Recoil,则必须在父组件中声明所有状态并将其作为 props 传递给子组件。

这个演示显然没有完善,在您键入时没有智能建议,您必须自己实现。祝你好运。 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-31
    • 2018-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多