NestJSは詳しくないのでざっと調べてきました。
なるほど、これはPHPではよくあるMVCのフレームワークです。
折角TypeScriptで型周りが強くなったんだから、LaravelみたいなのでWebサービス構築したいと言ってるわけですね。
MVCとはなんぞや、MVCは何が便利を他人に説明できない人は触ったらダメなヤツだわこれ。
確かにNode.jsにはないWebフレームワークなので需要はあると感じますが、
元々PHPでCakePHPやLaravelを触ってた人向け。
PHPのCakePHPやLaravelなんかは日本語の情報が多いので良いんですが、
NestJSの日本語の情報は皆無レベルに少ないので、公式サイトのドキュメントを読みながら自力で動かす所まで持っていけない人は触ってはダメです。
そういう意味でもPHPやNode.jsをどちらも中級者レベル以上に使いこなせる
英語もある程度苦にならず公式ドキュメントから情報を引っ張り出す事ができる
そんなそこそこ枯れたおっさんエンジニア向けなのかなと思います。
それでも頑張りたい?
ChromeやFirefoxにはマウスドラッグで文字列をドラッグすると
翻訳してくれる拡張機能が配布されてるので、
そういうのを使うなりして全部読み返しつつ理解してください。
そこまでの雰囲気を掴むならこういう日本語の記事の方が良いかもしれませんね。
しかし記事はどこまで言っても所詮備忘録のメモです。
執筆者が書き残さなきゃいけない所しか書いてないので、全てを知るには全く足りていませんね。
参考記事: Nest.jsは素晴らしい - Qiita
Nest.jsがサーバーサイド側のフレームワークということは理解できているのですが、実際にWEBアプリケーションとして使用する際にフロントエンド側とどうやって連携させたら良いのかが全然イメージできておらず。そこの方法を教えていただければと思っております。
このページを最初から最後まで全部読みましょう。
https://docs.nestjs.com/techniques/mvc
これだけだと辛すぎて泣くと思うのでかいつまんで解説します。
In order to create an MVC app, we also need a template engine to render our HTML views
NestJSを動かすにはHTMLになるテンプレートエンジンが必要です。
$ npm install --save hbs
We've used the hbs (Handlebars) engine, though you can use whatever fits your requirements. Once the installation process is complete, we need to configure the express instance using the following code:
今回はHandlebarsのテンプレートエンジンを採用します。
NestJSはExpressJSをベースとして活用しており、ExpressJSのルールを活用して好きなテンプレートエンジンを採用することが可能です
app.setBaseViewsDir(join(__dirname, '..', 'views'));
app.setViewEngine('hbs');
ExpressJSの設定方法はapp.set('view engine', 'pug')
なので詳細は異なりますが、
だいたいExpressJSと同じような指定をするようです。
https://expressjs.com/en/guide/using-template-engines.html
CSSやJavaScript、画像等の静的ファイルはapp.useStaticAssets(join(__dirname, '..', 'public'));
を用意してるからそれで勝手にやれという感じのようです。
Webpack等を別途用意して望んだ方が良いでしょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/07/20 07:45