'ng add @ angular / material'产生错误,为什么?

时间:2019-06-18 21:15:57

标签: angular angular-material angular-cli

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

  

$ ng添加@ angular / material
  跳过安装:软件包已安装

     

找不到模块'@ angular-devkit / schematics / tasks'
  错误:找不到模块'@ angular-devkit / schematics / tasks'
     在Function.Module._resolveFilename(internal / modules / cjs / loader.js:580:15)
     在Function.Module._load(internal / modules / cjs / loader.js:506:25)
     在Module.require(internal / modules / cjs / loader.js:636:17)
     在要求时(internal / modules / cjs / helpers.js:20:18)
     在对象。 (C:\ Users \ emilbonnek \ node_modules @ angular \ material \ schematics \ ng-add \ index.js:10:17)
     在Module._compile(内部/模块/cjs/loader.js:688:30)
     在Object.Module._extensions..js(internal / modules / cjs / loader.js:699:10)
     在Module.load(internal / modules / cjs / loader.js:598:32)
     在tryModuleLoad(内部/模块/cjs/loader.js:537:12)
     在Function.Module._load(internal / modules / cjs / loader.js:529:3)
     在Module.require(internal / modules / cjs / loader.js:636:17)
     在要求时(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也是如此。我完全确定我在正确的目录中运行了该命令。

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

3 个答案:

答案 0 :(得分:0)

我猜您的node_modules出问题了,因为找不到@angular-devkit/schematics/tasks。我会清理干净并重新安装以避免任何意外的问题,然后重试。

采用原理图范式意味着我们不再直接编辑package.json,而仅使用ng addng update,但是正如Aj1所说,有时它可以安装软件包并运行之后的示意图。

答案 1 :(得分:0)

我也遇到了最新版本的Material UI和Angular CLI的问题。在以上述@ Aj1手动安装材料后,我只能运行add命令:

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

答案 2 :(得分:0)

一定要全局安装:@angular-devkit/schematics-cli

npm install -g @angular-devkit/schematics-cli

这样,它会在 npm install 之前工作