Я создал простую новую схему, используя угловую схему cli. Эта схема принимает в качестве входных данных имя и создает файл в дереве. Моя директория files/
выглядит так:
src/
app/
__name@dasherize__.ts
Я построил его, а затем создал новый угловой проект:
ng new test-app --routing --style css
Затем я перехожу в каталог test-app и ссылаюсь на пример схемы:
npm link ../schematics/sample-schematic
Затем я запускаю свою схему:
ng g sample-schematic:sample
однако при этом я получаю следующую ошибку:
Pipe "dasherize" is not defined.
Если я изменю имя файла в моем каталоге files
на test.ts
, оно будет работать нормально, и файл будет создан. Я предполагаю, что мне не хватает импорта для использования различных схематических функций в моем проекте test-app Мои зависимости и dev-зависимости для test-app
выглядят так:
"dependencies": {
"@angular/animations": "~7.2.0",
"@angular/common": "~7.2.0",
"@angular/compiler": "~7.2.0",
"@angular/core": "~7.2.0",
...
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.13.0",
"@angular-devkit/core": "^7.3.9",
"@angular-devkit/schematics": "^7.3.9",
"@angular-devkit/schematics-cli": "^0.13.9",
"@angular/cli": "~7.3.9",
"@angular/compiler-cli": "~7.2.0",
"@angular/language-service": "~7.2.0",
"@schematics/angular": "^7.3.9",
...
}