将路由参数传递给元素

时间:2016-01-10 11:49:54

标签: polymer polymer-starter-kit

polymer-starter-kit在显示路由参数时使用users,如下所示:

<section>

但是我想将<section data-route="user-info"> <paper-material elevation="1"> <h2 class="page-title">User: {{params.name}}</h2> <div>This is {{params.name}}'s section</div> </paper-material> </section> 数据传递给一个元素,如下所示:

params.name

虽然我可以将数据传递给元素并将其标记在模板中,但我无法从任何lifecycle events访问<notification-section params="{{params}}" data-route="notifications"></notification-section> 变量(例如params )。

如何做到这一点?

2 个答案:

答案 0 :(得分:0)

作为元素是从最深的孩子准备的,ready事件将无法访问设置我的升序组件的数据。如果您希望根据该数据对元素进行功能更改,则需要绑定到changed事件,或者考虑使用不同的方式初始化该元素,以支持方框iron-pages

答案 1 :(得分:0)

您可以从&#34;附加&#34;访问参数。像这样的回调

Polymer({
  is: 'notification-section',
  properties: {
    params: {
      type: Object,
    },
  },
  attached: function(e) {
    console.log('params', this.params);
  },
});

您可以阅读有关附加活动here

的更多信息

我还有一个有效的演示here