聚合物纸张选项卡选择无法按预期工作

时间:2016-01-28 21:05:58

标签: javascript html data-binding polymer web-component

在使用Polymer(v1.0 +)开发我的个人网站时,通过修改PSK(Polymer Starter Kit)的副本,我在尝试使用selected属性时遇到问题我的导航菜单的Polymer dom-repeat模板,包含我的路线及其属性数组。

重复行为有效,路由工作,以及(大部分)数据按预期工作,但无法正确识别和/或显示选择,转换为未在视觉上“选择”的所选菜单项(没有花哨的选择效果)。

虽然我理解了一些HTML,CSS和JS,但我仍然是网络开发的新手,所以这可能是对我仍然缺少的数据绑定或JS的一些理解。

以下是问题:
为什么动态版本的代码不起作用?我该如何解决?

以下是我的内容:

app.js:

(function (document) {
  'use strict';

  var app = document.querySelector('#app');

  app.baseUrl = '/';

  /*
   * About 100 lines of unrelated "...", about 60 taken from PSK
   */

  app.routeMap = [
    {name: "home", text: "Home", icon: "home", url: app.baseUrl},
    {name: "about", text: "About", icon: "face", url: app.baseUrl + "about"},
    {name: "users", text: "Users", icon: "info", url: app.baseUrl + "users"},
    {name: "contact", text: "Contact", icon: "mail", url: app.baseUrl + "contact"}
  ];

})(document);

有效的HTML:

<template is="dom-bind" id="app">

  <!-- ... -->

  <paper-tabs attr-for-selected="data-route" selected="[[route]]">
    <paper-tab data-route="home">
      <a href="{{baseUrl}}">
        <iron-icon icon="home"></iron-icon>
        <span>Home</span>
      </a>
    </paper-tab>
    <paper-tab data-route="about">
      <a href="{{baseUrl}}about">
        <iron-icon icon="face"></iron-icon>
        <span>About</span>
      </a>
    </paper-tab>
  </paper-tabs>
</template>

工作的HTML: (但我正在努力工作) < / p>

<template is="dom-bind" id="app">

  <!-- ... -->

  <paper-tabs attr-for-selected="data-route" selected="[[route]]">
    <template is="dom-repeat" items="{{routeMap}}">
      <paper-tab data-route="{{item.name}}">
        <a href="{{item.url}}">
          <iron-icon icon="{{item.icon}}"></iron-icon>
          <span>{{item.text}}</span>
        </a>
      </paper-tab>
    </template>
  </paper-tabs>
</template>

1 个答案:

答案 0 :(得分:1)

聚合物绑定到元素属性需要这样的记录data-route$=name of route