Javascript 如何在Angular 4中使用路由器url通配符?
我想为每个具有/admin或具有此类URL的路由显示标题组件/admin/dashboard、/admin/users、/admin/tasks等 app.component.htmlJavascript 如何在Angular 4中使用路由器url通配符?,javascript,html,node.js,angular,Javascript,Html,Node.js,Angular,我想为每个具有/admin或具有此类URL的路由显示标题组件/admin/dashboard、/admin/users、/admin/tasks等 app.component.html <div id="page-wrap" class="inner-page {{router.url}}" *ngIf="router.url === '/admin'; else templateName"> <app-header></app-header> &
<div id="page-wrap" class="inner-page {{router.url}}" *ngIf="router.url === '/admin'; else templateName">
<app-header></app-header>
<div class="page-content-wrap">
<app-sidebar></app-sidebar>
<div class="content-wrap panel-right">
<router-outlet></router-outlet>
</div>
</div>
</div>
<ng-template #templateName>
<div class="inner-page {{router.url}}">
<div class="container">
<flash-messages></flash-messages>
<router-outlet></router-outlet>
</div>
</div>
</ng-template>
但是上面的代码只接受/admin。您知道如何添加通配符以便它接受具有/admin/tasks、/admin/users的路由吗
这是需要改进的条件:
<div id="page-wrap" class="inner-page {{router.url}}" *ngIf="router.url === '/admin'; else templateName">
非常感谢您的帮助。您可以编写一个方法来检查url是
/admin
还是以/admin/
开头:
isAdminRoute(value: string): boolean {
return /^\/admin(\/|$)/.test(value);
}
并在模板中调用它:
<div *ngIf="isAdminRoute(router.url); else templateName" ...>
您可以编写一个方法来检查url是
/admin
还是以/admin/
开头:
isAdminRoute(value: string): boolean {
return /^\/admin(\/|$)/.test(value);
}
并在模板中调用它:
<div *ngIf="isAdminRoute(router.url); else templateName" ...>
谢谢你的主意。我正在努力让你的代码发挥作用谢谢你@ConnorsFan工作得很卖力谢谢你的想法。我正在尝试让您的代码正常工作谢谢@ConnorsFan像一个角色一样工作您可以使用
子路由
用于所有管理路由演示:您可以使用子路由
用于所有管理路由演示: