.NET Core 2/Angular 6 SPAを起動しようとしています。 「dotnet new angular」を使用してAngular 5アプリケーションを作成し、angular.ioから このガイド を使用してアップグレードに進みました。アップグレードが完了したら、「dotnet run」を使用してアプリケーションを実行しようとしましたが、エラーのあるwithいエラーページが表示されます。
リクエストの処理中に未処理の例外が発生しました。
AggregateException:1つ以上のエラーが発生しました。 (1つ以上のエラーが発生しました。(Angular CLIが要求をリッスンしていることを示すことなく、NPMスクリプト 'start'が終了しました。エラー出力は次のとおりです。不明なオプション: '--extractCss'
InvalidOperationException:NPMスクリプト 'start'は、Angular CLIが要求をリッスンしていることを示すことなく終了しました。エラー出力:不明なオプション: '--extractCss'
アップグレード中にステップを見逃したのではないかと考えて、2度目に試しましたが、同じエラーが発生しました。
アプリの作成後に行った手順は次のとおりです。
npm install -g @angular/cli
npm install @angular/cli
ng update @angular/cli
ng update @angular/core
npm install --save @angular/material @angular/cdk @angular/animations hammerjs
npm install -g rxjs-tslint
rxjs-5-to-6-migrate -p src/tsconfig.app.json
Windows 10(1703)EnterpriseでNodeバージョン9.4.0および.Net Core 2.1.200を実行しています。
これを修正する方法についてのアイデアはありますか?完全なスタックトレースを次に示します。
---> System.IO.EndOfStreamException: Attempted to read past the end of the stream.
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<StartAngularCliServerAsync>d__3.MoveNext()
--- End of inner exception stack trace ---
at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<StartAngularCliServerAsync>d__3.MoveNext()
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<>c.<Attach>b__2_0(Task`1 task)
at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at Microsoft.AspNetCore.SpaServices.Extensions.Util.TaskTimeoutExtensions.<WithTimeout>d__1`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNetCore.SpaServices.Extensions.Proxy.SpaProxy.<PerformProxyRequest>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNetCore.Builder.SpaProxyingExtensions.<>c__DisplayClass2_0.<<UseProxyToSpaDevelopmentServer>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNetCore.Builder.RouterMiddleware.<Invoke>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.<Invoke>d__7.MoveNext()
---> (Inner Exception #0) System.AggregateException: One or more errors occurred. (The NPM script 'start' exited without indicating that the Angular CLI was listening for requests. The error output was: Unknown option: '--extractCss'
) ---> System.InvalidOperationException: The NPM script 'start' exited without indicating that the Angular CLI was listening for requests. The error output was: Unknown option: '--extractCss'
---> System.IO.EndOfStreamException: Attempted to read past the end of the stream.
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<StartAngularCliServerAsync>d__3.MoveNext()
--- End of inner exception stack trace ---
at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<StartAngularCliServerAsync>d__3.MoveNext()
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<>c.<Attach>b__2_0(Task`1 task)
at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
---> (Inner Exception #0) System.InvalidOperationException: The NPM script 'start' exited without indicating that the Angular CLI was listening for requests. The error output was: Unknown option: '--extractCss'
---> System.IO.EndOfStreamException: Attempted to read past the end of the stream.
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<StartAngularCliServerAsync>d__3.MoveNext()
--- End of inner exception stack trace ---
at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<StartAngularCliServerAsync>d__3.MoveNext()<---
<---
私にとって、これと以下は問題を解決しました: https://github.com/angular/angular-cli/issues/10666
また、package.jsonファイルを編集し、startおよびbuildプロパティから--extractCssパラメーターを削除する必要があります。から:
"scripts": {
"ng": "ng",
"start": "ng serve --extract-css",
"build": "ng build --extract-css",
に:
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
次のことを試してください
それは私のために働いた
この問題は、数日間も私を悩ます。今、ついに回避方法を取得します。どうやら、Visual StudioはASP.NetコアプロセスとともにAngular CLIサーバーを自動的に起動しようとします。このインスタンスでは、失敗しました。
Microsoft Doc here によると、Angular CLIサーバーを手動で起動できます。
「ClientApp」フォルダーに移動し、以下を発行します。
サーブ
コンソールからサーバーを起動します。
「Startup.cs」ファイルで、置き換えます
spa.UseAngularCliServer(..)
と
spa.UseProxyToSpaDevelopmentServer("http://localhost:4200");
これにより、アプリケーションのデバッグを続行できます。
JoeとJaysの両方のソリューションが機能します。コードを変更せずにデフォルトのテンプレート構成を使用するには、上記のJayが述べたようにWindowsにnode.jsをインストールし、VSを再起動するだけです。 https://nodejs.org/en/download/
Vsおよびvscodeを使用したCore Angularプロジェクトの作成、構成、および展開に関する優れたチュートリアルはこちら。 IISセットアップも含まれます。 https://www.codeproject.com/Articles/1250961/Deploying-an-Angular-Application-with-ASP-NET-Core
上記の解決策が機能しない場合は、次の方法を試してみてください。
シナリオ:作業中のVS 2017ソリューションを転送:コアWeb APIおよびangular spaプロジェクトを新しくインストールされたPCに;上記のエラーが表示されました。
解決策:Visual Studioインストーラー、node.js for windows( https://nodejs.org/en/download/ )およびIISに必要なwindows機能を使用してnode.jsワークロードをインストールした後、私は軌道に乗った。
メインインストールは、Visual StudioとWindows(これにはnpmが含まれています)用のnode.jsであり、動作させるには両方をインストールする必要がありました。おそらくコマンドプロンプトのパス設定...