Jhipster 如何在创建蓝图时覆盖针API?
我正在为JHipster设计一个.Net核心蓝图。文件树与Java版本不同,针不再工作。我需要覆盖打捆针以修改其中的路径。 如何使用蓝图的针而不是原始针来制作发电机 我试图延伸针并修改其中的路径,但没有考虑它们。杰普斯特的针总是用的。我还试着看看其他的蓝图,如ViewJS和Kotlin是如何处理这个问题的,但是没有人会覆盖这些指针。我还试图找到关于needle API的文档,但没有 例如,客户端的实体不再以相同的路径生成。所以我试图覆盖needle-client-angular.jsJhipster 如何在创建蓝图时覆盖针API?,jhipster,Jhipster,我正在为JHipster设计一个.Net核心蓝图。文件树与Java版本不同,针不再工作。我需要覆盖打捆针以修改其中的路径。 如何使用蓝图的针而不是原始针来制作发电机 我试图延伸针并修改其中的路径,但没有考虑它们。杰普斯特的针总是用的。我还试着看看其他的蓝图,如ViewJS和Kotlin是如何处理这个问题的,但是没有人会覆盖这些指针。我还试图找到关于needle API的文档,但没有 例如,客户端的实体不再以相同的路径生成。所以我试图覆盖needle-client-angular.js const
const chalk = require('chalk');
const _ = require('lodash');
const needleClientAngular = require('generator-jhipster/generators/client/needle-api/needle-client-angular');
const constants = require('generator-jhipster/generators/generator-constants');
const dotnetConstants = require('../../generator-dotnetcore-constants');
const jhipsterUtils = require('generator-jhipster/generators/utils');
const toPascalCase = require('to-pascal-case');
const CLIENT_MAIN_SRC_DIR = `${dotnetConstants.SERVER_SRC_DIR}${toPascalCase(this.baseName)}/ClientApp`;
module.exports = class extends needleClientAngular {
...
addEntityToMenu(routerName, enableTranslation, entityTranslationKeyMenu) {
const errorMessage = `${chalk.yellow('Reference to ') + routerName} ${chalk.yellow('not added to menu.\n')}`;
const entityMenuPath = `${CLIENT_MAIN_SRC_DIR}app/layouts/navbar/navbar.component.html`;
const entityEntry =
// prettier-ignore
this.generator.stripMargin(`|<li>
| <a class="dropdown-item" routerLink="${routerName}" routerLinkActive="active" [routerLinkActiveOptions]="{ exact: true }" (click)="collapseNavbar()">
| <fa-icon icon="asterisk" fixedWidth="true"></fa-icon>
| <span${enableTranslation ? ` jhiTranslate="global.menu.entities.${entityTranslationKeyMenu}"` : ''}>${_.startCase(routerName)}</span>
| </a>
| </li>`);
const rewriteFileModel = this.generateFileModel(entityMenuPath, 'jhipster-needle-add-entity-to-menu', entityEntry);
this.addBlockContentToFile(rewriteFileModel, errorMessage);
}
...
}
const chalk=require('chalk');
const=require('lodash');
const needleClientAngular=require('generator-jhipster/generators/client/needle api/needle-clientangular');
常数=要求('generator-jhipster/generators/generator常量');
const dotnetConstants=require('../../generator dotnetcore constants');
const jhipsterUtils=require('generator-jhipster/generators/utils');
const toPascalCase=require('to-pascal-case');
const CLIENT_MAIN_SRC_DIR=`${dotnetConstants.SERVER_SRC_DIR}${toPascalCase(this.baseName)}/ClientApp`;
module.exports=类扩展needleClientAngular{
...
addEntityToMenu(路由名称、启用翻译、entityTranslationKeyMenu){
const errorMessage=`${chalk.yellow('Reference to')+routerName}${chalk.yellow('notadded to menu.\n')}`;
constEntityMenuPath=`${CLIENT\u MAIN\u SRC\u DIR}app/layouts/navbar/navbar.component.html`;
常量实体条目=
//漂亮的忽略
此.generator.stripMargin(`|
|
|
|${u.startCase(路由名称)}
|
| `);
const rewriteFileModel=this.generateFileModel(entityMenuPath,'jhipster指针将实体添加到菜单',entityEntry);
此.addBlockContentToFile(重写文件模型,错误消息);
}
...
}
目前,我得到了这个错误,证明没有使用指针超控:
找不到
src/main/webapp/app/layouts/navbar/navbar.component.html或缺少
所需jhipster针。未将对银行帐户的引用添加到
菜单
目前,我找到的唯一方法是将blueprint客户端子生成器中的针路径直接替换到generator jhipster节点模块中。我知道它不干净,但这不是一个优先事项,我们肯定会在未来做得更好 相关问题: