用两个指令解除禁令

Debounce with two directives

本文关键字:指令 两个      更新时间:2023-09-26

我的应用程序使用socketio将文本区域中的更改推送给所有连接的客户端。当用户在文本区域中键入时,我希望发生两件事:

1) 立即通过插座推送文本

2) 每次更改后用1秒的反跳将文本保存到DB

我试过了,但由于某种原因,它不会推送或保存:

<div ng-model="text" ng-keyup="push()" ng-change="save()" ng-model-options="{ debounce: 1000 }"></div>

我也从文档中尝试过:

ng-model-options="{ updateOn: 'change', debounce: {'change': 1000} }"

但仍然没有运气。任何帮助都将不胜感激。

div不会引发onchange事件。您应该使用<input>元素。否则,您必须确定内容何时更改,并手动调用save()

请参阅:
https://stackoverflow.com/a/6676218/413397
https://docs.angularjs.org/api/ng/directive/ngChange