重置聚合物

时间:2018-03-08 18:30:28

标签: polymer polymer-2.0

我有一些铁页,其中'home'是我的主页。它上面有很多游戏卡,当用户点击一张卡时,它会开始一系列问题的测验。当我回到主页并再次点击一张卡时,它不会启动测验。它只是从以前的状态继续。如何让它再次开始测验。以下是我的页面。我正在使用Polymer的入门套件

<iron-pages
  selected="[[page]]"
  attr-for-selected="name"
  fallback-selection="view404"
  selected-attribute="visible"
  role="main"
>
  <my-home name="home"></my-home>
  <my-login name="login"></my-login>
  <my-view3 name="view3"></my-view3>
  <my-view404 name="view404"></my-view404>
  <my-game name="game"></my-game>
</iron-pages>

2 个答案:

答案 0 :(得分:1)

我认为你刚才遇到了这个问题:PolymerElements/iron-pages#53

根据建议in a comment,您可以查看支持dom-if及其restamp功能的iron-lazy-pages

更新:示例

<iron-lazy-pages
  selected="[[page]]"
  attr-for-selected="data-route"
  fallback-selection="view404"
  selected-attribute="visible"
  role="main">
    <template is="dom-if" data-route="home" restamp>
      <my-home></my-home>
    </template>

    ...
</iron-lazy-pages>

注意:我没有测试过这个例子,但它与dom-if example on the iron-lazy-pages repo非常相似。

答案 1 :(得分:0)

iron-lazy-pages v2.2.1不能正常运行

我这样使用“铁页”,效果很好

      isEqual(val1, val2) {
        return val1 == val2;
      }
 <iron-pages selected="[[page]]" attr-for-selected="data-route" fallback-selection="view404" role="main">
      <!--User block-->
      <div data-route="login">
        <template is="dom-if" if="{{isEqual('login',page)}}" restamp>
          <user-login></user-login>
        </template>
      </div>
      <div data-route="view404">
        <template is="dom-if" if="{{isEqual('view404',page)}}" restamp>
          <my-view404></my-view404>
        </template>
      </div>
    </iron-pages>

效果完美