我不知道我需要什么的正确术语,所以我会尽量解释清楚。
在 CLI中,sequelize-cli您可以运行其中一个sequelize db:create或sequelize db:drop. 我想创建两个原理图,其第一部分本身就是一个命令,但是如果添加第二部分,它将执行不同的原理图。
具体来说,我想:
- 运行
mySchematic:migration并创建大量文件。 - 运行
mySchematic:migration:express它只会为 express 创建迁移。 - 运行
mySchematic:migration:hapi它只会为 hapi 创建迁移。
我知道如何实现该功能,但我无法让它执行不同的命令。当我运行时mySchematic:migration:hapi,执行的原理图总是mySchematic:migration.
这是我的collection.json:
{
"$schema": "../node_modules/@angular-devkit/schematics/collection-schema.json",
"schematics": {
"migration": {
"description": "description.",
"factory": "./migrations/index#migration",
"schema": "./migrations/migration-schema.json"
},
"migration:express": {
"description": "description.",
"factory": "./migrations/index#express",
"schema": "./migrations/express-schema.json"
},
},
"migration:hapi": {
"description": "description.",
"factory": "./migrations/index#hapi",
"schema": "./migrations/hapi-schema.json"
},
}
更改原理图的顺序也不起作用。
我也试过这个,但也没有用:
{
"$schema": "../node_modules/@angular-devkit/schematics/collection-schema.json",
"schematics": {
"migration": {
"description": "description.",
"factory": "./migrations/index#migration",
"schema": "./migrations/migration-schema.json",
"express": {
"description": "description.",
"factory": "./migrations/index#express",
"schema": "./migrations/express-schema.json"
},
"hapi": {
"description": "description.",
"factory": "./migrations/index#hapi",
"schema": "./migrations/hapi-schema.json"
}
}
}
}