Polymer 从路由器到dom元素的聚合物数据

Polymer 从路由器到dom元素的聚合物数据,polymer,polymer-1.0,polymer-starter-kit,Polymer,Polymer 1.0,Polymer Starter Kit,我从polymer 1.0开始,创建了一个新的管线端点,如下所述 page('/users/:name', scrollToTop, function(data) { app.route = 'user-info'; app.params = data.params; }); 因此,如果我转到users/bob,它将转到route“user info” 在my index.html中,路由定义如下 <section data-route="user-in

我从polymer 1.0开始,创建了一个新的管线端点,如下所述

page('/users/:name', scrollToTop, function(data) {
      app.route = 'user-info';
      app.params = data.params;
    }); 
因此,如果我转到users/bob,它将转到route“user info”

在my index.html中,路由定义如下

<section data-route="user-info">
   <web-homepage></web-homepage>
</section>

其中web主页是一个自定义元素

自定义元素定义如下

<dom-module id="web-homepage">
  <template>
    This is homepage
  </template>

  <script>
    (function() {
      'use strict';

      Polymer({
        is: 'web-homepage',
        ready:function() {
           //want to get the route parameters (eg: bob) here 
        }
      });
    })();
  </script>

</dom-module>

这是主页
(功能(){
"严格使用",;
聚合物({
是:"网页",,
就绪:函数(){
//想在这里获取路由参数(例如:bob)
}
});
})();

是否有方法获取值route参数“:name”即就绪函数中的bob?

ready
在导入和创建元素时执行函数。如果您在那里访问route params,它很可能为null/空/未定义

但是,您可以将路由参数传递给元素,如下所示

app.params
中的
params
是app的属性。您可以简单地将其传递给其子元素

index.html应该如下所示

<section data-route="user-info">
   <web-homepage route-params=[[params]]></web-homepage>
</section>

在web主页中定义路由参数

<dom-module id="web-homepage">
  <template>
    This is homepage
  </template>

  <script>
    (function() {
      'use strict';

      Polymer({
        is: 'web-homepage',
        properties: {
          routeParams: {
            type: Object,
            observer: '_routeParamsChanged'
          }
        },
        ready:function() {
           //ready function is run during element creation. route-params will most likely be empty/null/undefined
           //Just random
           //want to get the route parameters (eg: bob) here 
        },
        _routeParamsChanged: function(newValue) {
           console.log('route params: ', newValue);
        }
      });
    })();
  </script>

</dom-module>

这是主页
(功能(){
"严格使用",;
聚合物({
是:"网页",,
特性:{
路线图:{
类型:对象,
观察家:""路特帕拉姆谢德"
}
},
就绪:函数(){
//ready函数在元素创建期间运行。路由参数很可能为空/空/未定义
//随机的
//想在这里获取路由参数(例如:bob)
},
_routeParamsChanged:函数(newValue){
log('route params:',newValue);
}
});
})();

\u未定义routeParamsChanged。我现在知道这个错误了。我明白了。你必须给出“_routeParamsChanged”。