Я хотел бы реализовать DefinitionProvider в моем расширении VSCode. Но я не уверен, как мне это сделать в Javascript, потому что registerDefinitionProvider не принимает мой класс.
module.exports = class ALDefinitionProvider {
provideDefinition(textDocument, position, token) {
console.log(textDocument);
console.log(position);
}
}
Сообщение об ошибке: введите описание изображения здесь Здесь текст: Аргумент типа 'ALDefinitionProvider' не может быть назначен параметру типа 'DefinitionProvider'. Типы, возвращаемые функцией provideDefinition (...), несовместимы между этими типами. Тип void не может быть присвоен типу ProviderResult. '.
И я зарегистрировал это так:
vscode.languages.registerDefinitionProvider('al', new ALDefinitionProvider());
Я тоже пробовал что-то вроде этого, но не уверен, как это реализовать с помощью этого:
class GoDefinitionProvider extends vscode.DefinitionProvider {
provideDefinition(
document: vscode.TextDocument, position: vscode.Position, token: vscode.CancellationToken):
Thenable<vscode.Location> {
}
}
Кто-нибудь знает, как это реализовать в Javascript / Node.js? :)