如何与兄弟姐妹分享变量?

时间:2016-03-17 05:50:48

标签: html5 polymer shadow-dom

我对Polymer非常陌生,所以请不要阻止任何信息!

我有一个标准格式的基本网页,我试图找出如何使用#nav组件公开currentSelection组件变量#main取决于切换正确模板的选择:

head
body
    div#nav
    div#main
    div#footer

我理解Polymer的封装方面,但我对胶水,事件系统以及动态HTML的不同实例化模式缺乏了解,特别是因为不推荐使用Polymer 0.5。

<template is="dom-bind">实际呈现的方式好像不是<template>吗?我想把整个网站整理成一个,但我不确定这是个好主意。

1 个答案:

答案 0 :(得分:3)

为什么不制作#nav#main自定义组件?这样你可以像currentSelection那样绑定到<my-nav current-selection="{{currentSelection}}"></my-nav> <my-main current-selection="[[currentSelection]]"></my-main>

dom-bind

dom-bind模板是必要的,以使绑定在主文档中的元素之间起作用(即index.html),因此您可以使用<template is="dom-bind"> <my-nav current-selection="{{currentSelection}}"></my-nav> <my-main current-selection="[[currentSelection]]"></my-main> <my-footer></my-footer> </template>

my-app

或者您可以将所有元素放在另一个自定义组件中,例如<body> <my-app></my-app> </body> ,其中绑定将起作用:

的index.html

<template>
    <my-nav current-selection="{{currentSelection}}"></my-nav>
    <my-main current-selection="[[currentSelection]]"></my-main>
    <my-footer></my-footer>
</template>

MY-app.html

mapply