You should import as shown below:
import { eThemeLeptonComponents } from '@volo/abp.ng.theme.lepton'
this.store.dispatch(
new AddReplaceableComponent({
component: MyApplicationLayoutComponent,
key: eThemeLeptonComponents.ApplicationLayout,
}),
);
Make sure the @volo/abp.ng.theme.lepton v2.6.0 is installed. If you still can't import, you can pass key as the 'Theme.ApplicationLayoutComponent'
.
Can you call /api/account/login
API via swagger and provide response to us?
Check the app-configuration response after logging in. If isAuthenticated
in currentUser
object equal to false, you should check the backend configuration. It may related to AuthServer settings in the appsettings.json
There is no fast way to add checkboxes to abp-table
. You can add checkboxes manually.
<ng-template #tableHeader>
<tr>
<th><input type="checkbox" /></th> <!-- You can add checkbox with your own logic to head-->
</tr>
</ng-template>
<ng-template #tableBody let-data let-index="rowIndex">
<tr>
<td><input type="checkbox" /></td> <!-- You can add checkbox with your own logic to row-->
</tr>
</ng-template>
If yo're using the primeng, you should see the table selection documentation.
Hi @drpdev2
It should be rowIndex
as shown below:
<ng-template #tableBody let-data let-index="rowIndex">
{{ index }}
</ng-template>
Menu and user profile sections are in the ApplicationLayoutComponent
. We will split these sections into components.
Hi,
See the component replacement document. The layout replacement has been documented.
You can import eThemeLeptonComponents
enum from @abp/ng.theme.lepton as shown below:
import { ..., AddReplaceableComponent } from '@abp/ng.core'; // imported AddReplaceableComponent
import { eThemeLeptonComponents } from '@abp/ng.theme.lepton'; // imported eThemeLeptonComponents enum for component keys
import { Store } from '@ngxs/store'; // imported Store
//...
export class AppComponent {
constructor(..., private store: Store) {} // injected Store
ngOnInit() {
// added below content
this.store.dispatch(
new AddReplaceableComponent({
component: YourApplicationComponent,
key: eThemeBasicComponents.ApplicationLayout,
}),
);
//...
}
}
Hi vishalnikam,
abp-table
usage in BookStore tutorial.abp-table
accepts the [rows]
input for pagination. If you can pass a rows
value, the pagination will be appear.
For sorting:
[abpTableSort]
input to abp-table
tag like below:<abp-table [abpTableSort]="{ key: sortKey, order: sortOrder }" ...>
th
element like below:<th (click)="sortOrderIcon.sort('name')">
Name
<abp-sort-order-icon
#sortOrderIcon
sortKey="name"
[(selectedSortKey)]="sortKey"
[(order)]="sortOrder"
></abp-sort-order-icon>
</th>
I created a gist to learn how to implement the sorting: https://gist.github.com/mehmet-erim/bfe2820cb9cbd0a70610dc477f568312
Lepton theme uses two logos for each style. You can change these logos with your own logos without changing the filenames in the angular/src/assets/images/logo folder. Login page uses theme{x}-reverse.png
We will add documentation for menu customization soon. I'll add the documentation link to here.
For now, wrappers should be defined by just one module. We'll change the wrapper structure. Each module will be defined own wrapper category without duplication.
The path
property accepts one level route like below:
addAbpRoutes([
{
name: 'Inventory',
path: '',
order: 1,
wrapper: true,
},
{
name: 'Stock Types',
path: 'inventory',
order: 2,
parentName: 'Inventory',
layout: eLayoutType.application,
children: [{ name: 'Stock Types', path: 'stock-types' }],
},
]);
But it seems a bug. We will be fixed.
The proper way is to add routes by using the addAbpRoutes
function. You use the addAbpRoutes
function after the bug is resolved.
By the way, adding routes by using the dispatchAddRoute
method, not a bad solution.
Thanks for reporting.