Typescript / Javascript Intellisense в Visual Studio 2019 MVC Просмотр - PullRequest
0 голосов
/ 29 мая 2020

У меня есть этот машинописный код:

function fooAlert(text: string): void {
    alert(text);
}

namespace BarNamespace {
    export function barAlert(text: string): void {
        alert(text);
    }

    export class BarEmpty {

    }
}

Машинописный код транслируется в javascript с использованием задач gulp:

function fooAlert(text) {
    alert(text);
}

var BarNamespace;

(function(BarNamespace) {
    function barAlert(text) {
        alert(text);
    }
    BarNamespace.barAlert = barAlert;
    var BarEmpty = function() {
        function BarEmpty() {} 
        return BarEmpty;
    }();
    BarNamespace.BarEmpty = BarEmpty;
})(BarNamespace || (BarNamespace = {}));

Проблема в том, что IntelliSense в Visual Studio 2019 не работает в разметке Razor, как я ожидал. Например, у меня есть это asp. net MVC Просмотр Core 3.1 (.cs html):

<!DOCTYPE html>
<html lang="en">
<head>
    <script src="~/Site.js" asp-append-version="true"></script>
</head>
<body>
    <script>
        fooAlert("foo"); // IntelliSense match after typing f
        BarNamespace.barAlert("bar"); // IntelliSense match after typing B for BarNamespace but not for .barAlert
    </script>
</body>
</html>

Когда я набираю f, то fooAlert(text: any): void отображается дважды (с any вместо string). Я думаю, один раз для файла javascript в моем решении и один раз для файла машинописного текста. Когда я набираю B, отображается BarNamespace. После того, как я наберу BarNamespace и ., ничего не будет в списке. У меня также есть файл .js.map, но я не вижу никаких изменений, когда добавляю его рядом с файлом js.

Я делаю что-то не так или есть способ улучшить предложения IntelliSense в Visual Studio 2019? Сценарий работает в браузере, но было бы намного проще и безопаснее иметь полезные предложения IntelliSense, по крайней мере, для доступных методов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...