node.jsサーバーでAngular 5アプリケーションを実行するには、次のものが必要です。
*サイトの推奨に従って、バージョン1.2がインストールされますが、私のようなナマケモノにはバージョン1.6が必要です*。ネタバレの詳細ng(angular / cli)が既にインストールされている場合。 バージョンを確認
ng -v
バージョン<1.6の場合-更新
npm uninstall -g @angular/cli npm cache npm cache verify npm i -g @angular/cli@latest
結果を確認する
ng -v
バージョン> 1.6の場合-目標は達成されました。
**オプションですが、それで高速ステップ1.新しいアプリケーションをデプロイする
一般的に、タイトルは必要なアクションには大きすぎます。
yarn
取り付けられている場合は推奨
ng set --global packageManager=yarn
その後、
ng
yarn
を使用して、必要なプロジェクトの依存関係をすべてインストールします。
だから
ng new my-project cd my-project
my-project
フォルダーに
my-project
を作成し
my-project
このフォルダーに移動します。
プロジェクトフォルダーに
node_modules
フォルダーがない場合、
ng
通常のパッケージマネージャーでの
yarn
インストールに関する推奨事項は無視されました。 または何かがうまくいかなかった。
それから
npm install
これで、小さなアプリケーションの準備がほぼ整いました。 開発モードで実行できます
npm run build
http:// localhost:4200のサンプルページをお楽しみください
しかし、これはすべて開始されたのです。 次のステップに進むことをお勧めします
ステップ2. node.jsサーバーの構成
そして、ここでは
ng
> 1.6が必要です
ng g universal universal
universal
という2番目の単語はタイプミスではありません。 この場合、これはモジュールの名前です。 コピー&ペーストモードが好きなら、そのままにしておくことをお勧めします。 その後、いつでも修正できます。
このコマンドは、必要なファイルを奇跡的に作成し、既存のファイルの構成を変更します。
サーバーのパッケージをインストールします
yarn add @angular/platform-server express @nguniversal/express-engine
NPMの愛好家が演じることができます
npm i @angular/platform-server express @nguniversal/express-engine
server.js
ファイルは、小さなプロジェクトのルートでのみ作成できます
server.js 'use strict'; require('zone.js/dist/zone-node'); const express = require('express'); const ngUniversal = require('@nguniversal/express-engine'); const appServer = require('./dist-server/main.bundle'); function angularRouter(req, res) { res.render('index', { req, res }); } const app = express(); app.get('/', angularRouter); app.use(express.static(`${__dirname}/dist`)); app.engine('html', ngUniversal.ngExpressEngine({ bootstrap: appServer.AppServerModuleNgFactory })); app.set('view engine', 'html'); app.set('views', 'dist'); app.get('*', angularRouter); app.post('*', angularRouter); app.listen(3000, () => { console.log(`Listening on http://localhost:3000`); });
そして、
package.json
ファイルで「build」スクリプトを追加または置換します
"sctipts": { // - . "build": "ng build --prod && ng build --prod --app universal --output-hashing=none" },
最終フェーズ。 サーバーを収集して起動します
npm run build node server.js
この場合、アプリケーションの使い慣れたウェルカムページは、
http:// localhost:3000で見ることができます
。特に信じられない人は、ブラウザでJavaScriptを無効にして、すべてがサーバー側でレンダリングされるようにすることができます。
かなり怠け者は
ここで完成したプロジェクトを取得でき
ます 。
好奇心people盛な人は、このチュートリアルの基礎となる
記事を読むことができます。