私はあなたと同じ船に乗っていると感じています!!! dotnetcore3の公式リリース以来、先週かそこらを費やして、SPAフレームワークを使用するものを立ち上げて実行しようとしました。
これに対する答えがなかったので、SPAサービスを実行しaspnetcore3
たいので、Visual Studio内で提供されているさまざまなテンプレートを調べました。現在、テンプレートはとを使用Angular
しReact
ていますaspnetcore3
。
これより前にはAngular
、React
およびのテンプレートがありAurelia
ます。私にとってアウレリアは素晴らしく見えます-バニラtypescriptバインディング。だから私はそのルートを下りようとしています。
HMR
(ホットモジュールの交換)はなんとか動作しました。CLIを使用してAureliaプロジェクトを構築しました。ただし、私のプロジェクトには多くの構成があり、私はまだ学習していWebPack
ます。HMRは現在、Aurelia CSSでは機能しません。
私のシナリオでは、VS Codeにクライアントアプリをロードしました。次に、aspnetコアプロジェクトを作成し、webpackにフックします。
Reactについて具体的に質問しているのは承知していますが、コンセプトは同じかもしれません。
いくつかのコード
ここに私のコードを見つけることができます:
https://github.com/andez2000/spa-apps/tree/master/aurelia-cli/e1/aurelia-app
注:現在、私はこのリポジトリにデータをダンプしています。トップレベルに移動すると、テンプレートから作成されたプロジェクトがあります。
使用法
- フォルダ
spa-apps\aurelia-cli\e1\aurelia-app
を開くVSCode
- 開いて
project.csproj
中をVS2019
- ターミナルを開いて
VSCode
実行npm start -- --hmr
し、出力が完了するまで待ちます。
- ソリューションをコンパイルして実行する
VS2019
これにより、デフォルトのブラウザーが開き、index.ejsが読み込まれます。
注意事項
dotnetプロジェクトとaureliaプロジェクトのポート番号は連携する必要があります。
Startup.cs
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
...
app.UseSpa(spa =>
{
if (env.IsDevelopment())
{
spa.UseProxyToSpaDevelopmentServer("http://localhost:5000");
}
});
}
aurelia.json
"platform": {
"hmr": false,
"open": false,
"port": 5000,
"host": "localhost",
"output": "wwwroot/dist"
},
したがって、おそらくこれは概念的にはReactと同じです。なんらかの理由で、私のReactテンプレートがIIS Expressに接続できず、先日は機能したため、実際に掘り起こすことはできません。
私にとって、このプロジェクトには可動部分がたくさんあります。私は最小限の作業ソリューションがあったらいいのに-それはwebpack + scss +いくつかのspaフレームワーク+ dotnetcore3で構成されています。しかし、大量の構成と多くのファイルがあります。
その他のリンク
また、このブログ投稿をチェックアウトする価値があるかもしれません:
https://www.alexdresko.com/2019/07/09/htmlwebpackplugin-asp-net-core-3/
ここでアウレリアについてもっと読む:
https://aurelia.io/
うまくいけば、誰かがあなたにもっと良い答えを与えるでしょう-しかし、これはあなたをうまくいくかもしれません。うまくいけば、マイクロソフトがドキュメントと例を更新し、いくつかのより良いガイダンスを提供してくれることを願っています。
dotnetテンプレートの更新(2020年4月)
更新されたテンプレートがaspnetコア/ dotnetコアのwebpackとの違いを克服できることを願っています。新しいテンプレートを取り込むケースになることを願っています。
こちらをご覧ください:
https://github.com/NetCoreTemplates/aurelia-spa