我想自定义addEntityToMenu功能。我用实体客户端创建了一个蓝图作为子生成器,然后用我的自定义函数覆盖 POST_WRITING_PRIORITY。
我的目的是创建一个自定义的MenuItem,然后将其添加到
entities/Menu.tsx
,它使用jhipster-needle-add-entity-to-menu
生成链接实体项。
//generate.mjs
const files = import('myCustom.cjs');
//...
get [POST_WRITING_PRIORITY]() {
return {
async addToMenu() {
if (this.skipClient) return undefined;
return (await files).addToMenu.call(this);
}
};
}
origin
addToMenu
函数会生成一个React组件像这样
我的自定义函数将生成如下对象:
{"label":"<a href=\"/movie\" target=\"_blank\" rel=\"noopener noreferrer\">\nMovie\n</a>","key":"movie"},
我也自定义
Menu.tsx
来接受那个结果。
但这是我运行时的结果
jhipster jdl app.jdl --blueprints generator-jhipster-my-custom
<MenuItem icon="asterisk" to="/movie">
<Translate contentKey="global.menu.entities.movie" />
</MenuItem>
{"label":<ahref=\"/movie\"target=\"_blank\"rel=\"noreferrer\">\nMovie\n</a>","key":"movie"},
似乎
addEntitiesToMenu
运行了两次。一张来自generator-jhipster
,一张来自generator-jhipster-my-custom
。但问题是我覆盖了它。我调试和研究了很多但不知道为什么。怎么了?谢谢!
附加:我所有的代码