使用纸质按钮点击事件进行路由

时间:2016-03-21 01:38:35

标签: javascript polymer-1.0

我在网络应用中遇到路由问题,问题是我的index.html中有不同的部分,其中一部分我有一个纸质按钮元素,所以我想当用户点击此按钮时,路由到其他部分,这是一些代码,以便您可以更好地理解:

的index.html

<iron-pages attr-for-selected="data-route" selected="{{route}}" id="main_pages">

        <section data-route="home">
          <my-register></my-register>
          <div class="div-vertical-flex">
              <my-generalcard id="generalcard_1"></my-generalcard>
              <my-generalcard id="generalcard_2"></my-generalcard>
              <my-generalcard id="generalcard_3"></my-generalcard>
          </div>
        </section>
        <section data-route="blog">
            <my-blog></my-blog>
        </section>
        <section data-route="pricing">
           <my-pricing-start></my-pricing-start>
           <my-pricingaccount></my-pricingaccount>
        </section>
         <section data-route="contactus">
            <my-contact></my-contact>
        </section>
         <section data-route="product">
            <my-product></my-product>
        </section>
        <section data-route="login">
            <my-login></my-login>
        </section>
        <section data-route="register">
            <my-registerpage></my-registerpage>
        </section>

      </iron-pages>

包含带按钮的元素的部分为:home,元素为:my-register

routing.html

page('/register/:email', function(data) {
  app.route = 'register';
  app.params = data.params;
});

上面是routing.html中的函数。我声明我将收到网址/register/:email,我将重定向到注册部分。

MY-register.html

<paper-button raised id="bt_register" on-tap="handleRegisterTap" class="paper-button-fullsize">
                Continue...
                <iron-icon icon="arrow-forward" suffix></iron-icon>
            </paper-button>
        <span>Have an account already? Please <a href="{{baseUrl}}login">Login</a></span>
    </paper-material>
</template>
<script>
    Polymer({
        is: 'my-registerform',

        properties: {
            email: {
              type: String,
              notify: true
            }
        },

        handleRegisterTap: function(){
            //this.$$('#main_pages').select("register/" + this.email);
        }

    });
    function clearInput () {
        document.querySelector('#email').value="";
    }
</script>

问题是我想重定向到该部分,但我无法找到方法,我尝试了:this.$$('#main_pages').select("register/" + this.email);但我找不到&#34;未找到&#34;。 我很感激你的任何帮助。

1 个答案:

答案 0 :(得分:1)

我得到了一个解决方案:

handleRegisterTap: function(){
            app.params = this.email;
            app.route = 'register';
        }

通过这种方式,我自动重定向到另一部分。