您如何使用material2将md-toolbar
置于与https://inbox.google.com/u/0/?pli=1相似的md-sidenav
之上?
以下是将md-sidenav
https://github.com/jelbourn/material2-app md-sidenav
与角度材质2一起使用的示例,但它不符合我的要求。
您如何以md-toolbar
与https://inbox.google.com/u/0/?pli=1中的md-sidenav
相同的方式修改此示例的方式provide('myFactory', useFactory: (dep1, dep2) => () => new Foo(dep1, dep2), deps: [Dep1, Dep2])
P.S 有一个类似的问题md-sidenav toggle() is on top of the md-toolbar,但解决方案与angular2 maerial2
不兼容答案 0 :(得分:4)
如果我理解了这个问题,这对我有用。只需将工具栏放在单独的元素中(不在sidenav容器内),也可以从md-sidenav-container中删除fullscreen指令
<md-toolbar color="primary">
<button md-icon-button (click)="nav.open()">
<md-icon class="md-24">menu</md-icon>
</button>
</md-toolbar>
<md-sidenav-container>
<md-sidenav #nav>
<md-nav-list>
<md-list-item>
<a href="#"></a>
</md-list-item>
<md-list-item>
<a href="#"></a>
</md-list-item>
</md-nav-list>
</md-sidenav>
<div>
<div #root="$implicit">
<router-outlet></router-outlet>
</div>
</div>
</md-sidenav-container>
&#13;
答案 1 :(得分:3)
您需要做的就是在circle.setRadius();
double radius = circle.getRadius();
内移动工具栏。确保md-sidenav-container
和toolbar
位于router-outlet
div的flex
方向内。需要一些CSS来调整高度,填充等,并在div column
enclosing
中设置垂直溢出。这将确保在您滚动内容时始终可见router-outlet
。
以下对我有用。 (注意:我使用了@ angular / flex-layout,这使得flex布局更容易。如果您希望可以将其更改为常规flex css样式)
toolbar
此要求的样式(<div>
<md-sidenav-container fxLayout="row" class="app-inner">
<md-sidenav #nav class="app-sidebar-panel" mode="over" [opened]="false">
<md-nav-list>
<md-list-item>
<a href="#">Item-1</a>
</md-list-item>
<md-list-item>
<a href="#">Item-2</a>
</md-list-item>
<md-list-item>
<a href="#">Item-3</a>
</md-list-item>
</md-nav-list>
</md-sidenav>
<div fxLayout="column" fxLayoutAlign="start stretch">
<md-toolbar class="app-toolbar" color="primary">
<button md-icon-button (click)="nav.open()">
<md-icon>menu</md-icon>
</button>
</md-toolbar>
<div class="app-route-content">
<router-outlet></router-outlet>
</div>
</div>
</md-sidenav-container>
</div>
):
SASS
希望这会对你有所帮助。