问题标签 [angular-schematics]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular-schematics - 角度示意图:是否可以将模板文件包含到另一个文件中
当创建自定义原理图时@angular-devkit/schematics
,他们是一种将模板文件包含到另一个中的方法吗?
我找不到有关此功能的文档。我什至找不到使用的模板引擎。
angular - 如何为重复文件创建角度示意图?
有一个创建小型应用程序的大型项目。在每个这样的应用程序中,有许多相同的 index.html / tslint.json / app 文件我知道通过角度示意图可以自动化。
我想出了如何使用角度示意图创建文件。以及如何使文件重复?
我想当我调用命令原理图时 .:myapp --name=test 我创建了一个包含填充文件的应用程序
angular - 对字符串而不是文件运行 tslint --fix
我想在字符串的脚本中运行 tslint fix。我想象这样的事情:
背景:我正在使用tsquery查找接口的最后一个 PropertySignature 并向其附加一个字符串。之后我想根据 tslint.json 自动格式化该文件。因为我使用的是角度示意图并且所有更改都是在虚拟文件系统中进行的,所以我不能只通过它的 cli 运行 tslint。
angular - Angular 原理图没有从模板创建文件
我创建了一个角度示意图,用于使用 ng generate 命令创建样板代码,但是尽管我已经阅读了所有文章并搞砸了,但我无法创建文件。
我的原理图工厂中有以下代码:
在与此相同的目录中是包含我的“__name@dasherize__.component.ts”模板的文件目录,我希望将其作为 url('./files') 函数的一部分拉入,但我不确定这正在发生。
我的模板文件如下:
我希望在运行原理图时会出现“CREATE”,但我得到的只是“无事可做”。
奇怪的是,使用 tree.create() 成功运行以创建文件,所以我想知道 url() 或 apply() 函数是否未按预期运行。
angular - 角度原理图在模板中生成空行,如何防止它?
我有__name@dasherize__.component.html
包含内容的 ng 示意图模板:
我用以下方式构建它:
生成的代码在模板中放置命令“<%”的位置创建空行,请参阅:
如果我将原理图命令放在 html 标记之后的模板中,如下所示:
然后像它应该的那样生成html - 没有空行。
我错了什么?是否可以以“人类可读”的方式编写原理图模板命令?我的意思是格式化样式,还是真的必须在 html 标签之后放置命令?
angular - Angular Schematics - 在 Object.getWorkspace 找不到(未定义)
我正在尝试创建一个简单的 Schematics 来读取我的“./files/xxx”中的所有模板文件并将解析的文件复制到我的 Angular 应用程序中。
我正在努力解决以下错误:
错误:在 Object.getWorkspace (C:\MyProg\Client.Core\node_modules@schematics\angular\utility\config.js:22:15) 找不到(未定义)
getWorkspace() 是我的问题。
你有什么主意吗?
提前泰。
angular - Angular 原理图库测试
在库中设置原理图时,您最终会得到如下结构:
当嵌套在自身或其下方搜索测试时,我将如何设置index.spec.ts
与库测试一起运行:test.ts
const context = require.context('./', true, /\.spec\.ts$/);
并查找文件夹崩溃。
不幸的是,稀疏的原理图文档跳过了测试(几乎所有其他可能有用的东西)。 https://angular.io/guide/schematics-for-libraries
angular - 自定义 Angular Schematics:如何修改文件并在不同的位置/文件夹中创建文件
在这篇文章之后,我一直在创建自定义 Angular Schematics:https ://medium.com/@tomastrajan/total-guide-to-custom-angular-schematics-5c50cf90cdb4
现在我正在尝试找出如何修改一些文件(例如 app-routing.module.ts,以添加通过我的自定义原理图创建的组件的路由)。可能吗?谁能提供一个例子?
我也想同时在不同的位置/文件夹中创建文件。
这是我的自定义原理图的当前结构:
- 源代码
- 桌子
- 文件
- __name@dasherize __-table
- __name@dasherize __-table-routing.module.ts
- __name@dasherize __-table.component.html
- __name@dasherize __-table.component.scss
- ...
- 索引.ts
- 架构.d.ts
- 模式.json
- 集合.json
- ...
这是我当前的代码:
索引.ts
模式.json
架构.d.ts
集合.json
现在,如果我在 Angular CLI 工作区中执行“ng g my_package_name:table --name=example”,则会在“src/app”内创建一个文件夹“example-table”,其中包含以下文件:
- 示例表路由.module.ts
- 示例-table.component.html
- 示例-table.component.scss
- ...
这已经很好了,但我想要的是在创建此文件夹和文件的同时,修改“app-routing.module.ts”文件添加示例表页面的路由并创建一个文件夹在文件夹“src/app/services”中有一些文件。
angular - Angular Schematics - 将库添加到 NgModule 导入
在 Angular 中使用 Schematics 生成组件时,它会尝试将新生成的组件导入到 NgModule 中,这是强制性的,以便组件工作并节省时间。
但是,在创建自己的原理图时,我找不到正确的方法来做同样的事情并将我的库导入 app.component.ts 的 NgModule。使用 ng-add 原理图时,如何让原理图自动将自己的条目添加到 NgModule 中?
原理图需要做两件事:
- 导入库
- 将其添加到 NgModule 导入
前:
后:
我知道 angular devkit 中存在执行此操作的功能,因为组件的“官方”原理图等使用它。我该怎么做?