@Vizer

Возможно ли в VS Code настроить работу Go To Defenition для JS c неоднозначными определениями?

Столкнулся с непонятным поведением функции Go To Defenition в VS Code.
Имея вызов функции, я хочу перейти к ее определению. В WebStorm для этого используется комбинация Ctrl + Click по имени функции. В VS Code для этого использую клавишу F12, однако, для большинства вызовов функций получаю "No definition found".

Пример 1:
При попытке перейти к определению foo в 7 строке, ожидаю что курсор будет переведен на 5 строку, но получаю ошибку "No definition found".
var helper = {
	SOME_CONST: 2
};

helper.foo = function() {} //<= сюда
helper.bar = function() {
	this.foo(); //=> отсюда
}


Пример 2:
При попытке перейти к определению _helper в 9 строке, ожидаю что курсор будет переведен в 13 строку, но получаю ошибку "No definition found".
var FooBarClass = function () {

};

FooBarClass.prototype.doJob = function() {
	var arr = [0, 1, 2];

	arr.map(function() {
		this._helper(); //=> отсюда
	}, this);
}

FooBarClass.prototype._helper = function() { //<= сюда

}


Существует ли способ заставить редактор находить определение (плагин, настройки или другие средства), или такое поведение в него заложено by design и с этим ничего не поделать?

Версия редактора 1.32.3, встроенные плагины TypeScript и JavaScript включены.
  • Вопрос задан
  • 575 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы