我在模型选项中配置了去抖动输入,如下所示:
<input type="text"
ng-model="searchTerm"
ng-keypress="$event.which===13 && search(searchTerm)"
ng-model-options="{debounce: 1000}">
然后我为模型值设置了手表:
$scope.$watch('searchTerm', function (term) {
if (!term || term.length === 0) {
$scope.clearSearch();
}
if (term.length > 3) {
$scope.search(term);
}
});
从输入声明中可以看出,如果按下回车键,我已经配置了一个ng-keypress事件来调用我的搜索功能。
有没有办法可以清除去抖动,所以[enter]键按键会清除去抖动,让searchTerm立即更新?
由于
答案 0 :(得分:1)
最简单的解决方案是在初始化编辑器后设置模型:
editorInit(editor: MonacoStandaloneCodeEditor) {
const model = monaco.editor.createModel(
this.getCode(),
"json",
monaco.Uri.parse("a://b/foo.json")
);
editor.setModel(model);
}
这是使用json模式的https://stackblitz.com/edit/materia-ngx-monaco-editor-example-gtgxpy?file=src/app/app.component.ts
表示,首选方法是仅使用该模型初始化编辑器,而不在创建模型后对其进行设置...而是在检查源代码ngx-monaco-editor之后,此方法是最一致的解决方案。< / p>