yoyo-ng-modulewindy
Version:
服务于52ABP模板的前端开源的相关组件内容。整合了ng-alain和你NG ZORRO的内容
55 lines • 4.25 kB
JavaScript
import { Component, ChangeDetectionStrategy, } from '@angular/core';
import { MenuService, SettingsService } from 'yoyo-ng-module/theme';
import { ReuseTabService } from 'yoyo-ng-module/abc';
var SHOWCLS = 'nav-floating-show';
var FLOATINGCLS = 'nav-floating';
var SidebarNavComponent = /** @class */ (function () {
// mapKeys = [];
// mapVals = [];
function SidebarNavComponent(menuService, settings, reuseTabService) {
this.menuService = menuService;
this.settings = settings;
this.reuseTabService = reuseTabService;
// menu 展示数组
this.openMap = [];
this.processMenuOpen(reuseTabService.curUrl, this.menuService.menus);
}
SidebarNavComponent.prototype.hasChildren = function (item) {
if (item.items) {
return true;
}
return false;
};
/**
* 处理菜单展开状态
*/
SidebarNavComponent.prototype.processMenuOpen = function (currentUrl, menus, parentMenu) {
var _this = this;
menus.forEach(function (item) {
if (parentMenu && item.route === currentUrl) {
parentMenu.isOpen = true;
}
if (item.items && item.items.length > 0) {
_this.processMenuOpen(currentUrl, item.items, item);
}
});
};
SidebarNavComponent.decorators = [
{ type: Component, args: [{
selector: 'sidebar-nav',
template: "\n <ul nz-menu [nzMode]=\"'inline'\" [nzInlineCollapsed]=\"settings.layout.collapsed\" id=\"left_menu_ul\">\n <ng-template ngFor let-menuItem [ngForOf]=\"menuService.menus\" let-mainMenuItemIndex=\"index\">\n <li *ngIf=\"!hasChildren(menuItem)&&menuItem.isDisplay\" nz-menu-item routerLinkActive=\"ant-menu-item-selected\">\n <a [routerLink]=\"[menuItem.route]\">\n <i *ngIf=\"menuItem.icon\" class=\"{{menuItem.icon}}\"></i>\n <span>{{menuItem.name}}</span>\n </a>\n </li>\n\n <li *ngIf=\"hasChildren(menuItem)&&menuItem.isDisplay\" nz-submenu [nzOpen]=\"menuItem.isOpen\">\n <span title>\n <i *ngIf=\"menuItem.icon\" class=\"{{menuItem.icon}}\"></i>\n <span>{{menuItem.name}}</span>\n </span>\n <ul>\n <ng-template ngFor let-subMenuItem [ngForOf]=\"menuItem.items\" let-mainMenuItemIndex=\"index\">\n <li *ngIf=\"!hasChildren(subMenuItem)&&subMenuItem.isDisplay\" nz-menu-item routerLinkActive=\"ant-menu-item-selected\">\n <a [routerLink]=\"[subMenuItem.route]\">\n <i *ngIf=\"subMenuItem.icon\" class=\"{{subMenuItem.icon}}\"></i>\n <span>{{subMenuItem.name}}</span>\n </a>\n </li>\n\n <li *ngIf=\"hasChildren(subMenuItem)&&subMenuItem.isDisplay\" nz-submenu>\n <span title>\n <i *ngIf=\"subMenuItem.icon\" class=\"{{subMenuItem.icon}}\"></i>\n <span>{{subMenuItem.name}}</span>\n </span>\n\n <ul>\n <ng-template ngFor let-subSubMenuItem [ngForOf]=\"subMenuItem.items\" let-mainMenuItemIndex=\"index\">\n <li *ngIf=\"!hasChildren(subSubMenuItem)&&subSubMenuItem.isDisplay\" nz-menu-item routerLinkActive=\"ant-menu-item-selected\">\n <a [routerLink]=\"[subSubMenuItem.route]\">\n <i *ngIf=\"subSubMenuItem.icon\" class=\"{{subSubMenuItem.icon}}\"></i>\n <span>{{subSubMenuItem.name}}</span>\n </a>\n </li>\n </ng-template>\n </ul>\n </li>\n </ng-template>\n </ul>\n </li>\n </ng-template>\n</ul>\n\n ",
// templateUrl: './sidebar-nav.component.html',
changeDetection: ChangeDetectionStrategy.Default,
preserveWhitespaces: false,
},] },
];
/** @nocollapse */
SidebarNavComponent.ctorParameters = function () { return [
{ type: MenuService },
{ type: SettingsService },
{ type: ReuseTabService }
]; };
return SidebarNavComponent;
}());
export { SidebarNavComponent };
//# sourceMappingURL=sidebar-nav.component.js.map