核心支架中每个页面的不同工具栏

时间:2014-08-13 06:58:44

标签: polymer paper-elements core-elements

我目前正在为我的基本应用程序结构使用core-scaffold。但是,我希望每个页面都有一个不同的工具栏。我想做类似的事情:

<core-scaffold>
        <core-header-panel navigation flex mode="seamed">
            <core-toolbar>
                Veganolux
            </core-toolbar>
            <core-menu>
                <paper-item icon="store" label="Restaurants" on-tap="{{showRestaurants}}"></paper-item>
                <paper-item icon="settings" label="Settings" on-tap="{{showSettings}}"></paper-item>
                <paper-item icon="info" label="About" on-click="{{showAbout}}"></paper-item>
            </core-menu>
        </core-header-panel>
        <div tool>Restaurants</div>
        <core-pages id="pages" selected="0">
            <section id="pageRestaurants">
                <div tool>Toolbar with buttons</div>
            </section>
            <section id="pageSettings">
                <div tool>Toolbar without buttons</div>
            </section>
            <section id="pageAbout">
                <div tool>Toolbar with other buttons</div>
            </section>
        </core-pages>
    </core-scaffold>

然而,这是不可能的,因为它不是核心支架的直接子代。我知道我可以添加数据绑定来更改标题,但如果我添加不同的按钮/等,它会变得复杂。到工具栏。

1 个答案:

答案 0 :(得分:1)

一个选项是创建一个包含当前所选页面的activePage变量。您的on-tap事件处理程序会更新activePage变量。然后,您可以将core-header-panel的部分包含在条件模板中,例如<template if="{{ activePage === 'restaurants' }}">

另一个选项是创建多个布局元素,并将页面元素包装在像http://erikringsmuth.github.io/app-router/#/layouts这样的布局中。