web-dev-qa-db-ja.com

Angular-cli ng serve livereloadが機能しない

Ng-cliでサンプルプロジェクトを作成した後、ソースフォルダーでng serveを実行すると、プロジェクトはブラウザーに正しく読み込まれますが、livereloadが機能しません。

npm -v:3.10.9

ng -v:angular-cli:1.0.0-beta.19-3 node:4.4.3 os:win32 x64

すでにインターネットで多くの情報を検索しましたが、何も問題を解決しませんでした。

18
Anton Selin

Ubuntu 16.04とangular CLI 1.0.0。

この問題は、LinuxのInotify Watches Limitに関連しています。この問題を解決するために、時計の制限を512Kに増やしました。これらのコマンドを実行します。

Sudo sysctl fs.inotify.max_user_watches=524288
Sudo sysctl -p --system

その後、IDEを再起動すると、変更検出が機能し始めました。

75
neetesh

Inotifyウォッチャーの量を増やす

技術的な詳細

Linuxのデフォルトでは、listenはinotifyを使用してディレクトリの変更を監視します。監視できるファイル数のシステム制限に遭遇することは珍しいことではありません。たとえば、Ubuntu Lucidの(64ビット)inotify制限は8192に設定されています。

次のコマンドを実行すると、現在のinotifyファイルの監視制限を取得できます。

$ cat /proc/sys/fs/inotify/max_user_watches

この制限がディレクトリ内のすべてのファイルを監視するのに十分でない場合、Listenが適切に機能するには、制限を増やす必要があります。

次のコマンドで一時的に新しい制限を設定できます。

$ Sudo sysctl fs.inotify.max_user_watches=524288
$ Sudo sysctl -p

制限を永続的にしたい場合は、以下を使用します。

$ echo fs.inotify.max_user_watches=524288 | Sudo tee -a /etc/sysctl.conf
$ Sudo sysctl -p

Listenが不平を言い続ける場合は、max_queued_eventsmax_user_instancesの値にも注意する必要があります。

ソース

27
mQuiroz

ng serve -lrフラグを試してください。このフラグは私と一緒に使用できます。おそらく、問題は--livereloadフラグが廃止されたために発生します

4
Alex Link

それはウェブパックによるものです。

一度に2つのangular applicationを実行する場合。アプリケーションを停止および開始する必要があるたびに、アプリケーションをリロードしない場合があります。その場合、1つ実行してください。一度にアプリケーション

3
uma shankar

お使いのバージョンの問題は不明ですが、最近同様の問題に直面しました。これが私のマシン環境です:
Ubuntu: 16.04.3 npm -v : 5.5.1
ng -v : Angular CLI: 1.5.5 Node: 9.2.0 OS: linux x64 Angular: 5.0.4
使用していたng serve -oファイルをローカルで提供するため、これがライブリロードの問題の原因の一部であり、問​​題を修正したのはng serve --open代わりに。これが何らかの形で役立つことを願っています。

プロジェクトはマップされたネットワークドライブにありますか?これによりLiveReloadが失敗することがわかりました。

Windows 7のVSコードで実行しています。Angular CLI:1.7.4ノード:8.11.1 NPM:5.6.0 OS:win32 x64

ベアボーンを作成しましたAngular app with Angular CLI on my 'E:' drive、which is mappeded to a folder on your network。 'ng serve' doesコードの変更を検出しません。プロジェクトを「C:」ドライブにコピーし、Live Reloadは期待どおりに機能します。プロジェクトをローカルドライブに移動することで問題が解決するかどうかを確認してください。

1
JNygren

このファイルfs.inotify.max_user_watches=524288/etc/sysctl.confを追加するだけです。

または、このSudo echo “fs.inotify.max_user_watches=524288” >> /etc/sysctl.confを実行します。ファイルを開いて編集したくない場合にも機能するはずです。

次に、これを実行しますSudo sysctl -p --system

0

Linux OSSudoでアプリを実行します

Sudo ng serve
0
WasiF

Angular 7.にアップグレードすると、ライブリロードサーバーが機能しなくなりました。

理由は私のNodeバージョンは10.15.0で、Windows 10 x64の場合です。

Nodeをバージョン10.10.0にダウングレードした後->すべてが正常に動作しています。

古いNodeバージョンはこちらからダウンロードできます: https://nodejs.org/en/download/releases/

幸運を。

0
NavCore