Angular何年も使ってきて初めてサーバーサイドレンダリングをやりました
いうまでもなくエラーが結構出てきましたが、最後のやつだけ記録できればと思います

ターミナルで以下のコマンドを実行してブラウザで確認したところこのようなエラーが出てきました

$ npm run build:ssr && npm run serve:ssr

Node server listening on http://localhost:4000
Error: renderModule[Factory]() requires the use of BrowserModule.withServerTransition() to ensure
the server-rendered app can be properly bootstrapped into a client app.

 

調べてみたところBrowserModule.withServerTransition()が必要みたいなので、
app.module.tsに入れてやります

@NgModule({
    imports: [
        // ここから
        BrowserModule.withServerTransition({
            appId: 'my-app-id'
        }),
        // ここまで
        HttpClientModule,
        AppRoutingModule,
        FormsModule
    ],
    providers: [
        ContentService
    ],
    bootstrap: [AppComponent]
})
export class AppModule {
}

これで無事に動きました!

参考記事

Server side rendering using Angular4(Angular Universal) [closed]

 

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA