簡體   English   中英

使用全局安裝的 @angular/core 而不是本地

[英]Use globally installed @angular/core instead of local

所以我將@angular/core模塊安裝為全局 NPM 依賴項。 我希望我所有的 Angular 項目都使用那個版本。

不幸的是,Angular 似乎不喜歡它。 每次我在項目根目錄中運行npm start時,都會出現以下錯誤:

[user@host]$ npm start
...
ERROR in Could not resolve module @angular/core

我以多種方式搜索錯誤,發現tsconfig.json文件可能以某種方式損壞。 因此,我將baseUrl更改為npm root -g目錄,但隨后出現了另一個錯誤:

[user@host]$ npm start
...
ERROR in No NgModule metadata found for 'AppModule'

更有趣的是,當我運行ng version我可以看到奇怪的Angular: undefined條目:

$ ng version

Angular CLI: 7.3.9
Node: 10.16.0
OS: linux x64
Angular: undefined
... 

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.13.9 (cli-only)
@angular-devkit/core         7.3.9 (cli-only)
@angular-devkit/schematics   7.3.9 (cli-only)
@schematics/angular          7.3.9 (cli-only)
@schematics/update           0.13.9 (cli-only)

正如你所看到的,也沒有@angular/core條目。 這很奇怪,因為 ex @angular-devkit/core也是全局安裝的,那么為什么地球上的@angular/core不被識別? 當我在本地安裝 Angular 時,一切正常。

所以我通過“作弊”解決了它。 我利用了我使用 Linux 操作系統的事實,並創建了一個指向全局 node_modules 文件夾的符號鏈接,現在 Angular 認為一切都已就位:

$ ln -s /home/user/.nvm/versions/node/v10.15.3/lib/node_modules node_modules

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM