b-m*_*m-f 7 html javascript scope polymer
我想在单击某个选项卡时更改聚合中的视图.为此,我想到了如纸张标签文档中所述的纸张标签和铁页.
这是HTML,我必须意识到这一点:
<html>
<head>
<title>Test</title>
<script src="bower_components/webcomponentsjs/webcomponents-lite.min.js"></script>
<link rel="import" href="bower_components/polymer/polymer.html">
<link rel="import" href="bower_components/paper-tabs/paper-tabs.html">
<link rel="import" href="bower_components/iron-pages/iron-pages.html">
</head>
<body>
<paper-tabs selected="{{selected}}">
<paper-tab>Tab 1</paper-tab>
<paper-tab>Tab 2</paper-tab>
<paper-tab>Tab 3</paper-tab>
</paper-tabs>
{{selected}}
<iron-pages selected="{{selected}}">
<div>Page 1</div>
<div>Page 2</div>
<div>Page 3</div>
</iron-pages>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
更改选项卡似乎有效.但看起来所选变量未正确设置,因为iron-pages元素不会更改视图.如何在Polymer 1.0中实现所需的数据绑定?我是否需要围绕这两个元素创建一个自定义容器元素,以便为它们提供一个可以访问这样一个变量的范围?
template[is="dom-bind"]如果要使大括号工作,则必须将元素嵌入元素中.像这样
<template is="dom-bind" id="scope">
<span>{{number}}</span>
</template>
...
<script>
window.addEventListener('WebComponentsReady', function() { //You have to make sure that all custom elements are loaded
var scope = document.querySelector("template#scope");
scope.number = 1; // display the number 1
});
</script>
Run Code Online (Sandbox Code Playgroud)