Tôi cảm thấy mình ở cùng một chiếc thuyền với chính mình !!! Đã trải qua tuần trước kể từ khi phát hành chính thức dotnetcore3, tôi đã cố gắng để có được một cái gì đó và chạy bằng cách sử dụng khung SPA.
Do chưa có câu trả lời cho điều này và tôi rất muốn có các dịch vụ SPA chạy cho aspnetcore3
tôi đã xem xét các mẫu khác nhau được cung cấp trong Visual Studio. Hiện tại các mẫu đang Angular
và React
sử dụng aspnetcore3
.
Trước đó, có các mẫu cho Angular
, React
và cũng có Aurelia
. Đối với tôi Aurelia trông thật tuyệt - các ràng buộc bản thảo vanilla. Vì vậy, tôi đang cố gắng đi xuống tuyến đường đó.
Tôi quản lý để làm cho HMR
(Thay thế mô-đun nóng) làm việc. Tôi đã xây dựng một dự án Aurelia bằng CLI. Tuy nhiên, dự án của tôi có rất nhiều cấu hình, và tôi vẫn đang học WebPack
. HMR hiện không hoạt động với Aurelia CSS.
Đối với kịch bản của tôi, tôi đã tải ứng dụng khách trong Mã VS. Tôi đã tạo một dự án lõi aspnet mà sau đó móc vào webpack.
Tôi biết bạn đang hỏi cụ thể về React, nhưng khái niệm này có thể giống nhau.
Một số mã
Bạn có thể tìm thấy mã của tôi ở đây:
https://github.com/andez2000/spa-apps/tree/master/aurelia-cli/e1/aurelia-app
LƯU Ý: Hiện tại tôi chỉ bán đồ vào repo này. Có những dự án được tạo từ các mẫu nếu bạn điều hướng đến cấp cao nhất.
Sử dụng
- Mở thư mục
spa-apps\aurelia-cli\e1\aurelia-app
trongVSCode
- Mở
project.csproj
trongVS2019
- Mở một thiết bị đầu cuối trong
VSCode
và chạy npm start -- --hmr
và chờ cho đầu ra hoàn thành.
- Biên dịch và chạy giải pháp trong
VS2019
Điều này sẽ mở trình duyệt mặc định và tải index.ejs.
Những điều cần lưu ý
Số cổng trong dự án dotnet và dự án aurelia phải liên kết.
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"
},
Vì vậy, có lẽ đây là khái niệm giống như React. Vì một số lý do, mẫu React của tôi không kết nối được với IIS Express - và nó đã hoạt động vào ngày khác - vì vậy không thực sự ở vị trí để đi đào.
Đối với tôi, dự án này có rất nhiều bộ phận chuyển động. Tôi ước tôi có một giải pháp làm việc tối thiểu - bao gồm webpack + scss + một số khung spa + dotnetcore3. Nhưng có rất nhiều cấu hình và rất nhiều tập tin.
Các liên kết khác
Ngoài ra nó có thể đáng để kiểm tra bài đăng blog này:
https://www.alexdresko.com/2019/07/09/htmlwebpackplugin-asp-net-core-3/
Tìm hiểu thêm về aurelia ở đây:
https://aurelia.io/
Hy vọng ai đó sẽ cho bạn một câu trả lời tốt hơn - nhưng điều này có thể giúp bạn đi. Hy vọng Microsoft sẽ cập nhật các tài liệu và ví dụ và cung cấp cho chúng tôi một số hướng dẫn tốt hơn.
cập nhật mẫu dotnet (tháng 4 năm 2020)
Tôi hy vọng các mẫu được cập nhật có thể khắc phục sự khác biệt của lõi aspnet / lõi dotnet với webpack. Vì vậy, hy vọng đó là một trường hợp kéo theo các mẫu mới.
Xem tại đây:
https://github.com/NetCoreTemsheet/aurelia-spa