私のデータ要求に対して、データベースに接続せずに単純なJSONを返すと、Angular Universalのサーバーレンダリングが正常に動作します。AngularのZone.jsによるユニバーサルサーバーのレンダリングが停止します。直し方?
しかし、正しいバージョンのZone.jsがないと、MySQLデータベースへのリクエストが行われないことがわかりました。 私は、次のエラーが発生しました:
TypeError: Cannot read property 'on' of undefined
at Protocol._enqueue (/Applications/MAMP/htdocs/Angular2/myproject/node_modules/mysql/lib/protocol/Protocol.js:152:5)
...
はまた、私は、私は警告していた注意を払っ:
[email protected] requires a peer of [email protected]~0.6.21 but none was installed.
だから私は、適切Zone.jsをインストール:
npm install [email protected]
と私は受信を開始MySQLのデータ
BUT!この時点で、サーバーのレンダリングが停止します。私は、HTMLテンプレート内の
<!--template bindings={}-->
を表示します。
私はMySQLに接続せずにJSONを返すように戻ってきましたが、この場合でもサーバーレンダリングが機能していないことがわかりました。
だから私は、これで少しプレイしていると私は、コマンドを使用する場合ことを発見した:
npm install zone.js
を私はデータベースに接続せずにJSONを返すときに、サーバーレンダリングが正常に動作しますが、私は、MySQLに接続しようとした場合元のエラーが発生します。
これで、サーバーレンダリングを行わずに、サーバーレンダリングまたはMySQLへの接続を行っています。サーバーへのレンダリングではなく、データベースへの接続が必要です。
誰かが何をすべきか分かっているなら、私は助けに感謝します。ありがとうございました。