角度-自定义原理图-创建一个带有库的整个项目



所有内容都在标题中!但这里有更多的细节。我目前正在开发一个原理图,它将创建一个完整的角度项目,包括一个库。

我正在使用externalSchematic来做这件事:

const rule: Rule = chain([
externalSchematic('@schematics/angular', 'ng-new', workspaceOptions),
externalSchematic('@schematics/angular', 'library', libraryOptions),
sourceParametrizedTemplates
]);

然而,当我尝试创建库时,我收到了一条错误消息:

消息:错误:无法确定工作区路径的格式。堆栈:错误:无法确定工作区路径的格式。位于Object.readWorkspace(C:\Users\XXXX\Documents\Dev\FWK_INDUS\sources\Angular \FWK.WEB.Schematics\node_modules@angular-devkit\core\src\workspace\core.js:84:15(在异步Object.getWorkspace(C:\Users\XXXX\Documents\Dev\FWK_INDUS\sources\Angular \FWK.WEB.Schematics\node_modules@schematics\angular \ utility \ workspace.js:51:27(异步C:\Users\XXXX\Documents\Dev\FWK_INDUS\sources\Angular \FWK.WEB.Schematics\node_modules@schematics\angular \library\index.js:147:27

我假设我正在一个目录中创建一个新项目,当我尝试添加库时,我不在目录中,因此原理图无法找到一个有角度的工作空间。

所以我正试图找到一种方法来指定我刚刚创建的新项目的路径。。。

如果有人知道怎么做。。。

谢谢!

我也遇到了同样的问题,在我的情况下,我是在调试模式下运行的(使用"原理图"命令(,如果是这种情况,发生的是"项目"参数的默认值没有传递给原理图程序,当你从ng命令生成原理图时,这个参数会自动解决,因为ng命令从angular.json文件本身获取它。

在我的情况下,快速的解决方案是在调试(编码(时使用"--path"参数来指定我想在哪里应用原理图,因为参数"path"比它刚刚工作的"project"更可取。

最新更新