javascript - 直到并且除非在摩纳哥编辑器中点击最后一行,否则不会触发任何事件
问题描述
我面临一个奇怪的问题。我正在通过自动建议设置方法,例如:
CONCATENATE(n)|
我的光标在 . 之后的括号内显示它n
。喜欢
现在我通过替换n
一些值开始再次输入,这些值也假设开始显示auto-suggestion
与这些字符相关的值。但除非我最后点击它,否则它不起作用。然后我再次回到括号内并开始打字。它开始填充自动建议。
我试图调试库,我发现更改事件在我最后点击外部之前不起作用。
那么,有什么方法可以处理它,或者我们可以在配置中添加任何东西来使它工作吗?
monaco.languages.registerCompletionItemProvider(customLanguageConfig.id, {
provideCompletionItems: (model, position) => {
const word = model.getWordUntilPosition(position);
const messageId = 'messageId-' + currentMessageId++;
window.parent.postMessage({
message: _monacoId + "-provide-completion-items",
value: {
messageId: messageId,
textUntilPosition: model.getValueInRange({
startLineNumber: 1,
startColumn: 1,
endLineNumber: position.lineNumber,
endColumn: position.column
}),
range: {
startLineNumber: position.lineNumber,
endLineNumber: position.lineNumber,
startColumn: word.startColumn,
endColumn: word.endColumn-1
}
}
}, "*");
const promise = new Promise((resolve, reject) => {
mapOfCompletionRequests[messageId] = resolve;
});
return promise;
}
});
解决方案
推荐阅读
- google-sheets - Google Sheet - 按 ROW 和 COLUMN 过滤
- swift - Flutter插件本机iOS func句柄未被调用
- flutter - Dart 分析器突然给出非空值错误
- node.js - Firestore 交易 node.js 查询
- apache-spark - spark从第二个表中存在但在不同列中的值填充第一个表中的列值
- regex - 正则表达式。Notepad ++如何用自身和附加符号/单词替换一行?
- tensorflow - 我们的混淆矩阵没有意义
- google-apps-script - 希望根据另一列的值在 Google 表格中将复选框值设置为 TRUE
- r - 如何使用跨多列的 if 语句编写 for 循环?
- javascript - 根据从数组中提取的值减少对象值?