mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
add base resolver
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
import {NgModule} from '@angular/core';
|
||||
import {RouterModule} from '@angular/router';
|
||||
import {I18nBreadcrumbResolver} from 'src/app/core/breadcrumbs/i18n-breadcrumb.resolver';
|
||||
import {LdnServicesOverviewComponent} from './ldn-services-directory/ldn-services-directory.component';
|
||||
import {LdnServiceNewComponent} from './ldn-service-new/ldn-service-new.component';
|
||||
import {LdnServiceFormEditComponent} from './ldn-service-form-edit/ldn-service-form-edit.component';
|
||||
import {NavigationBreadcrumbResolver} from "../../core/breadcrumbs/navigation-breadcrumb.resolver";
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
@@ -12,18 +12,18 @@ import {LdnServiceFormEditComponent} from './ldn-service-form-edit/ldn-service-f
|
||||
path: '',
|
||||
pathMatch: 'full',
|
||||
component: LdnServicesOverviewComponent,
|
||||
resolve: {breadcrumb: I18nBreadcrumbResolver},
|
||||
resolve: {breadcrumb: NavigationBreadcrumbResolver},
|
||||
data: {title: 'ldn-registered-services.title', breadcrumbKey: 'ldn-registered-services.new'},
|
||||
},
|
||||
{
|
||||
path: 'new',
|
||||
resolve: {breadcrumb: I18nBreadcrumbResolver},
|
||||
resolve: {breadcrumb: NavigationBreadcrumbResolver},
|
||||
component: LdnServiceNewComponent,
|
||||
data: {title: 'ldn-register-new-service.title', breadcrumbKey: 'ldn-register-new-service'}
|
||||
},
|
||||
{
|
||||
path: 'edit/:serviceId',
|
||||
resolve: {breadcrumb: I18nBreadcrumbResolver},
|
||||
resolve: {breadcrumb: NavigationBreadcrumbResolver},
|
||||
component: LdnServiceFormEditComponent,
|
||||
data: {title: 'ldn-edit-service.title', breadcrumbKey: 'ldn-edit-service'}
|
||||
},
|
||||
|
27
src/app/core/breadcrumbs/navigation-breadcrumb.resolver.ts
Normal file
27
src/app/core/breadcrumbs/navigation-breadcrumb.resolver.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { BreadcrumbConfig } from '../../breadcrumbs/breadcrumb/breadcrumb-config.model';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router';
|
||||
import { hasNoValue } from '../../shared/empty.util';
|
||||
import { currentPathFromSnapshot } from '../../shared/utils/route.utils';
|
||||
|
||||
/**
|
||||
* The class that resolves a BreadcrumbConfig object with an i18n key string for a route
|
||||
*/
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class NavigationBreadcrumbResolver implements Resolve<BreadcrumbConfig<string>> {
|
||||
constructor() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Method for resolving an I18n breadcrumb configuration object
|
||||
* @param {ActivatedRouteSnapshot} route The current ActivatedRouteSnapshot
|
||||
* @param {RouterStateSnapshot} state The current RouterStateSnapshot
|
||||
* @returns BreadcrumbConfig object
|
||||
*/
|
||||
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): BreadcrumbConfig<string> {
|
||||
console.log(route, state);
|
||||
return null
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user