web-dev-qa-db-ja.com

Angular 6に更新した後、新しいngが機能しなくなりました

今日、angular cliを最新バージョンに更新し、新しいAngularプロジェクトを作成できないエラーが発生しました。以下は、エラーログです。実行後に取得ng new app-name

Error: Schematic "ng-new" not found in collection "@schematics/angular".
    at SchematicEngine.createSchematic (C:\Users\xyz\node_modules\@angular\cli\node_modules\@angular-devkit\schematics\src\engine\engine.js:155:23)
    at CollectionImpl.createSchematic (C:\Users\xyz\node_modules\@angular\cli\node_modules\@angular-devkit\schematics\src\engine\collection.js:12:29)
    at NodeWorkflow.execute (C:\Users\xyz\node_modules\@angular\cli\node_modules\@angular-devkit\schematics\tools\workflow\node-workflow.js:70:38)
    at Promise (C:\Users\xyz\node_modules\@angular\cli\models\schematic-command.js:141:22)
    at new Promise (<anonymous>)
    at NewCommand.runSchematic (C:\Users\xyz\node_modules\@angular\cli\models\schematic-command.js:140:16)
    at NewCommand.<anonymous> (C:\Users\xyz\node_modules\@angular\cli\commands\new.js:77:25)
    at Generator.next (<anonymous>)
    at C:\Users\xyz\node_modules\@angular\cli\commands\new.js:7:71
    at new Promise (<anonymous>)

この問題を自分で解決するために、angular clinpmを2回以上再インストールしました。パッケージのバージョンは次のとおりです。

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.6.0
@angular-devkit/core         0.6.0
@angular-devkit/schematics   0.6.0
@schematics/angular          0.6.0
@schematics/update           0.6.0
rxjs                         6.1.0
Angular Cli                  6.0.0
Node                         8.11.1
npm                          5.6.0

どんな助けでもいただければ幸いです。

編集:実行しましたng new angularグローバルパッケージがインストールされている場所から、そこからアプリケーションを作成できます。他の場所から実行すると、エラーが発生します。

5
John Smith

それは私に起こりました、私はそれを報告したバグだと思いました ここ 、私は私のホームディレクトリにnode_modulesという名前のフォルダを持っていたことがわかりました!

これが同じ問題であることを確認するには、次のコマンドを実行します

npm ls -g @schematics/angular
npm ls @schematics/angular 

2番目のコマンドの出力にが含まれている場合

npm ERR! extraneous: @schematics/[email protected] C:\Users\User\node_modules\@angular\cli\node_modules\@schematics\angular

その場合、CLIと古いバージョンの@ schematics/angularの両方がローカルにインストールされているnode_modulesフォルダー(C:\ Users\User)があるように見えるのと同じ問題が発生している可能性があります。この問題を修正するには、これを削除してください。

あなたにも当てはまるかどうか確認してください。

10
Djidel

新しいngを発行しようとしたときにもこのエラーが発生しました

後で、作業中のディレクトリにnode_modulesフォルダーを作成する「npminstall @angular/cli」を発行した結果であることに気付きました。

「node_modules」フォルダーを削除し、「ngnew」でプロジェクトを作成します。

追伸angular 6アップグレードの場合、ngチームは、「npm install @ angular/cli」を好きな場所で実行できないことを指定する必要がありますが、これは新しく作成されたプロジェクトでのみです。角度の初心者には少し不公平

お役に立てれば

3
FlyBlaze

Angular CLIのアップグレードがうまくいかなかったと思われます。アンインストールしてから再インストールしてみてください。

npm uninstall @angular/cli -g
npm install @angular/cli -g
2
Yakov Fain

アンインストールして再インストールしてみてください:npm ls -g @ schematics/angular npm ls @ schematics/angular

0
Samir Satpute