Приложение Asp.net core 2.1 + Angular 6. В моем Start.cs файле. у нас есть
app.UseSpa(spa =>
{
// To learn more about options for serving an Angular SPA from ASP.NET Core,
// see https://go.microsoft.com/fwlink/?linkid=864501
spa.Options.SourcePath = "ClientApp";
if (env.IsDevelopment())
{
spa.UseAngularCliServer(npmScript: "start");
}
});
Утром я запускаю основное приложение asp.net из Visual Studio (нажмите F5). У меня сборка веб-пакета застряла в модуле сборки. Долго строит scss файл и висит там. Таким образом, веб-страница выдает исключение промежуточного программного обеспечения ядра asp.net.
Однако во второй половине дня я получил другую ошибку. Что такое Fail: Microsoft.AspNetCore.SpaServices[0].
Однако, если я запускаю npm start в командном окне, то запускаю dotnet run в коде Visual Studio. Это нормально.
Скажи мне что делать?
Позвольте мне попробовать. Почему node_modules можно сломать? Причина, по которой я использую Visual Studio, заключается в том, что я хочу вместе отлаживать машинописный файл и сервисный код. Я не знаю, как это сделать dotnet run.
Я не знаю, почему node_modules сломан. Иногда это так ... Вы могли бы нажать F5 вместо dotnet run





Найди ответ сам. Это все еще ошибка .NET-Core. Обновление (F5) страницы решило проблему, и она работает нормально. (https://github.com/aspnet/JavaScriptServices/issues/1625)
Проблемы все еще существуют, однако просто жду их и угловые сборки, с моей стороны, проблема, похоже, вызвана порядком сборки. Я имею в виду, что код на стороне сервера строится быстрее, чем код angular, поэтому после ожидания секунды или двух ошибка исчезает.
Другой способ, если мы сначала запустим сервер, подождем, пока веб-пакет завершит компиляцию, а затем выполним команду dotnet run.
У меня была аналогичная ошибка, как указано выше (сбой: Microsoft.AspNetCore.SpaServices[0]), но для dotnet CLI (версия 3.0.100, Angular 8.0). Я просто создал проект Angular - во время сборки не возникало ошибок, но когда я запустил его, я получил указанную выше ошибку. После 10 минут расследования обнаружена следующая проблема при самостоятельном запуске сервера angular:

Это потому, что путь к модулю HomeComponent был пуст:

Этот код был автоматически сгенерирован инструментом dotnet, поэтому я не уверен, почему он был опущен. Модуль HomeComponent находится в домашней папке. Таким образом, добавление пути решило проблему.
Это может быть полезно для других новичков.
Для файла блокировки ngcc это вызывает проблему. Просто удалите папку «node_modules» в папке «ClientApp» и пересоберите приложение.
Чтобы получить подробную информацию о проблеме, вызывающей эту ошибку, запустите приложение через:
npm start
вместо dotnet run.
Затем, если сообщение об ошибке указывает на что-то, например. отсутствуют пакеты, вам может потребоваться установить отсутствующие пакеты, и после устранения проблемы вы можете продолжать использовать команду dotnet run, как и раньше.
Иногда
node_modulesломается. Обычно я полностью удаляю каталогnode_modules/и запускаюnpm i. Только после того, как я увижу, что это удается, я начну бегатьdotnet run. Такой подход много раз спасал мне жизнь. Надеюсь, поможет.