Pracujesz z usługami spa w .NetCore 3.0?

9

Tworzę aplikację internetową SPA za pomocą ASP.Net Core React + Redux.

Po aktualizacji do .Net Core 3.0 widzę, że UseWebpackDevMiddleware i AddNodeServices są przestarzałe.

Uczę się nowego szablonu projektu React + Redux, ale nie używa webpacka ani SSR.

1) Gdzie mogę znaleźć przykład lub informacje o pracy z webpack w .Net Core 3.0? z UseWebpackDevMiddleware było naprawdę łatwe do skonfigurowania HMR i kompilacji webpack.

2) Gdzie mogę znaleźć przykład lub informacje o SSR z .Net 3.0 + React?

alex
źródło

Odpowiedzi:

4

Czuję, że jestem na tej samej łodzi co ty !!! Spędziłem mniej więcej tydzień od oficjalnej wersji dotnetcore3, starałem się uruchomić coś, co korzysta ze środowiska SPA.

Biorąc pod uwagę, że nie ma na to odpowiedzi i jestem zainteresowany uruchomieniem usług SPA, ponieważ aspnetcore3zajrzałem do różnych szablonów dostarczonych w Visual Studio. Obecnie szablony są Angulari Reactktóre używają aspnetcore3.

Wcześniej istnieją szablony Angular, Reacta także Aurelia. Dla mnie Aurelia wygląda świetnie - waniliowe wiązania maszynowe. Więc próbuję zejść tą drogą.

Udało mi się uruchomić HMR(wymianę modułu na gorąco). Zbudowałem projekt Aurelia za pomocą CLI. Jednak mój projekt ma wiele konfiguracji i wciąż się uczę WebPack. HMR obecnie nie współpracuje z Aurelia CSS.

W moim scenariuszu aplikacja kliencka została załadowana w kodzie VS. Stworzyłem projekt rdzenia aspnet, który następnie łączy się z webpackiem.

Wiem, że pytasz konkretnie o React, ale koncepcja może być taka sama.

Trochę kodu

Mój kod możesz znaleźć tutaj:

https://github.com/andez2000/spa-apps/tree/master/aurelia-cli/e1/aurelia-app

UWAGA: Obecnie po prostu wrzucam rzeczy do tego repozytorium. Istnieją projekty tworzone na podstawie szablonów, jeśli przejdziesz na najwyższy poziom.

Stosowanie

  1. Otwórz folder spa-apps\aurelia-cli\e1\aurelia-appwVSCode
  2. Otwórz project.csprojwVS2019
  3. Otwórz terminal VSCodei uruchom npm start -- --hmri poczekaj na zakończenie danych wyjściowych.
  4. Skompiluj i uruchom rozwiązanie w VS2019

Powinno to otworzyć domyślną przeglądarkę i załadować plik index.ejs.

Warto zwrócić uwagę

Numery portów w projekcie dotnet i projekcie aurelia muszą się wiązać.

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"
  },

Więc może jest to koncepcyjnie to samo co React. Z jakiegoś powodu mój szablon React nie łączy się z IIS Express - i zadziałał innego dnia - więc nie jestem w stanie zacząć kopać.

Dla mnie ten projekt ma wiele ruchomych części. Chciałbym mieć minimalne działające rozwiązanie - które zawiera webpack + scss + trochę środowiska spa + dotnetcore3. Ale jest mnóstwo konfiguracji i mnóstwo plików.

Inne linki

Warto również sprawdzić ten post na blogu:

https://www.alexdresko.com/2019/07/09/htmlwebpackplugin-asp-net-core-3/

Przeczytaj więcej o aurelii tutaj:

https://aurelia.io/

Mam nadzieję, że ktoś da ci lepszą odpowiedź - ale może cię to zachęcić. Mamy nadzieję, że Microsoft zaktualizuje dokumenty i przykłady oraz zapewni nam lepsze wskazówki.

Aktualizacje szablonu dotnet (kwiecień 2020)

Mam nadzieję, że zaktualizowane szablony mogą przezwyciężyć różnice rdzenia aspnet / rdzenia dotnet dzięki pakietowi webpack. Mam nadzieję, że chodzi o pobranie nowych szablonów.

Spójrz tutaj:

https://github.com/NetCoreTemplates/aurelia-spa

Andez
źródło