Я сгенерировал приложение jhipster с Angular 7 в качестве внешнего интерфейса и создал много сущностей для CRUD.
Теперь мне нужен новый интерфейс с брендингом, стилем и новыми представлениями для включения бизнес-логики и т. Д. Также мне нужно сохранить все страницы администрирования CRUD и мониторинга.
У меня есть два варианта:
Настроить угловое приложение по умолчанию, изменить CSS и сгенерированный код, добавить новые компоненты и т. Д. (Я не хочу этого делать).
Создайте новый отдельный пользовательский интерфейс для внешнего пользователя, сохранив сгенерированный по умолчанию пользовательский интерфейс для бизнес-пользователей с некоторыми незначительными изменениями.(Я думаю, что это лучше).
Что я пробовал
Я сгенерировал новый угловой модуль с угловым клиентом и импортировал по умолчаниюсгенерированный модуль приложения.В этом новом модуле я создал новый компонент и могу получить к нему доступ, добавив ссылку в навигационную панель по умолчанию.
В чем моя проблема? Теперь я могу создавать больше компонентов вотдельный угловой модуль и оставьте сгенерированный таким, какой он есть, мое заблуждение заключается в том, что:
- В долгосрочной перспективе, если усложнить внешний интерфейс, мой код будет обслуживаемым.
- Есть ли лучший способ создания отдельного слоя пользовательского интерфейса для внешних (некоммерческих) пользователей?
- Как мне управлять авторизацией?В зависимости от роли мне нужно перенаправить пользователя либо в приложение «Бизнес» (созданное jhipster), либо в то, которое мы собираемся сгенерировать (для некоммерческих пользователей / внешних пользователей)
Я хотел бы показать код, но до сих пор он работал нормально (новый угловой модуль, сгенерированный ng cli)
app.module.ts
import { ExternaluiModule } from './externalui/externalui.module';
@NgModule({
imports: [
BrowserModule,
Poc3JhipsterCustomizeUiAppRoutingModule,
Ng2Webstorage.forRoot({ prefix: 'jhi', separator: '-' }),
NgJhipsterModule.forRoot({
// set below to true to make alerts look like toast
alertAsToast: false,
alertTimeout: 5000
}),
Poc3JhipsterCustomizeUiSharedModule.forRoot(),
Poc3JhipsterCustomizeUiCoreModule,
Poc3JhipsterCustomizeUiHomeModule,
Poc3JhipsterCustomizeUiAccountModule,
// jhipster-needle-angular-add-module JHipster will add new module here
Poc3JhipsterCustomizeUiEntityModule,
ExternaluiModule
],
С уважением.