在angular 8/javascript中,如何在按backspace键时删除整个子字符串?

在angular 8/javascript中,如何在按backspace键时删除整个子字符串?,javascript,angular,Javascript,Angular,我有一个要求,当我按back space时,我想删除整个子字符串 问题1- 如果我的输入中有以下文本- @用户A正在向@User B打招呼 现在如果我退格,按退格键时整个@User a或@User B都应该被删除 问题2- 我有一个用户列表(例如@User a、@User B、@User C…等等),这些子字符串应该在单次空格键上删除。 因此,如何确定在按backspace键时它是出现在我的用户列表中的子字符串 请建议我如何在javascript/角度方法中做到这一点 以下是算法: 添加KeyD

我有一个要求,当我按back space时,我想删除整个子字符串

问题1-

如果我的输入中有以下文本-
@用户A正在向@User B打招呼

现在如果我退格,按退格键时整个
@User a
@User B
都应该被删除

问题2-

我有一个用户列表(例如
@User a、@User B、@User C
…等等),这些子字符串应该在单次空格键上删除。 因此,如何确定在按backspace键时它是出现在我的用户列表中的子字符串

请建议我如何在javascript/角度方法中做到这一点

以下是算法:

  • 添加
    KeyDown
    事件处理程序。检查keycode是否为
    Backspace
  • 从向后方向的光标中查找
    @
    的位置
  • 找到后,在步骤#2的位置和光标之间找到子字符串
  • 检查此字符串是否存在于预定义的用户数组中
  • 如果是,则执行默认操作并更新模型以删除找到的用户名
  • 请使用以上代码作为参考。这段代码中可能有一些边缘情况和bug。在生产中使用之前,请对其进行彻底测试。

    请查看以下内容-

    以下是算法:

  • 添加
    KeyDown
    事件处理程序。检查keycode是否为
    Backspace
  • 从向后方向的光标中查找
    @
    的位置
  • 找到后,在步骤#2的位置和光标之间找到子字符串
  • 检查此字符串是否存在于预定义的用户数组中
  • 如果是,则执行默认操作并更新模型以删除找到的用户名

  • 请使用以上代码作为参考。这段代码中可能有一些边缘情况和bug。在生产中使用之前,请对其进行彻底测试。

    您是否可以添加更多详细信息,您是否尝试过什么,您定义了
    @user A、@user B
    ,实际数据是什么样子的,例如,它看起来像
    @John paul
    还是
    John paul
    ,每个用户都有姓氏吗。你能提供一些示例数据吗?你能添加更多详细信息吗?你试过什么吗?你定义了
    @user A、@user B
    ,实际数据是什么样子的,例如:它看起来像
    @John paul
    还是
    John paul
    ,每个用户都有姓吗。你能提供一些样本数据吗