首页 > 解决方案 > 'ng add @angular/material' 产生错误,为什么?

问题描述

当我尝试使用该ng add命令安装角材料组件时,package already installed出现错误。

$ ng add @angular/material
跳过安装:包已经安装

找不到模块'@angular-devkit/schematics/tasks'
错误:
在 Function.Module._resolveFilename (internal/modules/cjs/loader.js:580:15)
处找不到模块'@angular-devkit/schematics/tasks' Function.Module._load (internal/modules/cjs/loader.js:506:25)
在 Module.require (internal/modules/cjs/loader.js:636:17)
在 require (internal/modules/cjs/helpers. js:20:18)
在对象。(C:\Users\emilbonnek\node_modules@angular\material\schematics\ng-add\index.js:10:17)
在 Module._compile (internal/modules/cjs/loader.js:688:30)
在 Object. Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader .js:537:12)
在 Function.Module._load (internal/modules/cjs/loader.js:529:3)
在 Module.require (internal/modules/cjs/loader.js:636:17)
在 require (internal/modules/cjs/helpers .js:20:18)
在新的 ExportStringRef(C:\Users\emilbonnek\Documents\private\ultimating\node_modules@angular-devkit\schematics\tools\export-ref.js:18:25)
在 NodeModulesEngineHost._resolveReferenceString (C :\Users\emilbonnek\Documents\private\ultimating\node_modules@angular-devkit\schematics\tools\node-module-engine-host.js:94:21)
在 NodeModulesEngineHost.createSchematicDescription(C:\Users\emilbonnek\Documents\ private\ultimating\node_modules@angular-devkit\schematics\tools\file-system-engine-host-base.js:179:34)
在 SchematicEngine.createSchematic (C:\Users\emilbonnek\Documents\private\ultimating\node_modules@angular-devkit\schematics\src\engine\engine.js:219:38)

我无权访问任何模块,所以我不认为这是因为该软件包已经安装,但是可能是我只是误解了有关原理图的一些东西。

我在角度 CLI 版本 8.0.3 上,对于 devkit/core 和 devkit/schematics 也是如此。我完全确定我在正确的目录中运行命令。

为什么命令没有按预期执行?任何帮助表示赞赏。

标签: angularangular-materialangular-cli

解决方案


我在使用最新版本的 Material UI 和 Angular CLI 时也遇到了这个问题。像上面提到的@Aj1 那样手动安装材料后,我只能运行 add 命令:

npm install --save @angular/material @angular/cdk @angular/animations
ng add @angular/material

推荐阅读