ng-devui
Version:
DevUI components based on Angular
27 lines • 3.38 kB
JavaScript
import { Injectable } from '@angular/core';
import { Router } from '@angular/router';
import * as i0 from "@angular/core";
import * as i1 from "@angular/router";
export class BreadCrumbService {
constructor(router) {
this.router = router;
}
// 与原生routerLink表现形式一致,navigateByUrl()可直接传入字符串类型的链接,并将链接解析为routerLink的urlTree的形式
navigateTo($event, item) {
// 兼容a标签与不同键的交互形式
if ($event.button !== 0 || $event.ctrlKey || $event.metaKey || $event.shiftKey) {
return;
}
if (typeof item.target === 'string' && item.target !== '_self') {
return;
}
$event.preventDefault();
this.router.navigateByUrl(item.link);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadCrumbService, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadCrumbService }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadCrumbService, decorators: [{
type: Injectable
}], ctorParameters: () => [{ type: i1.Router }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZGV2dWkvYnJlYWRjcnVtYi9icmVhZGNydW1iLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUd6QyxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQW9CLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQUksQ0FBQztJQUN2QyxnRkFBZ0Y7SUFDaEYsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFJO1FBQ3JCLGlCQUFpQjtRQUNqQixJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0UsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMvRCxPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0FiVSxpQkFBaUI7bUhBQWpCLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCcmVhZENydW1iU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHsgfVxuICAvLyDkuI7ljp/nlJ9yb3V0ZXJMaW5r6KGo546w5b2i5byP5LiA6Ie077yMbmF2aWdhdGVCeVVybCgp5Y+v55u05o6l5Lyg5YWl5a2X56ym5Liy57G75Z6L55qE6ZO+5o6l77yM5bm25bCG6ZO+5o6l6Kej5p6Q5Li6cm91dGVyTGlua+eahHVybFRyZWXnmoTlvaLlvI9cbiAgbmF2aWdhdGVUbygkZXZlbnQsIGl0ZW0pIHtcbiAgICAvLyDlhbzlrrlh5qCH562+5LiO5LiN5ZCM6ZSu55qE5Lqk5LqS5b2i5byPXG4gICAgaWYgKCRldmVudC5idXR0b24gIT09IDAgfHwgJGV2ZW50LmN0cmxLZXkgfHwgJGV2ZW50Lm1ldGFLZXkgfHwgJGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0eXBlb2YgaXRlbS50YXJnZXQgPT09ICdzdHJpbmcnICYmIGl0ZW0udGFyZ2V0ICE9PSAnX3NlbGYnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoaXRlbS5saW5rKTtcbiAgfVxuXG59XG4iXX0=