聚合物,在链接的应用程序路由元素上更改路由

安德鲁·太平洋

我在具有以下结构的项目中使用来自https://github.com/PolymerElements/app-route的app-route元素

my-app包含以下代码元素:

<app-location route="{{route}}"></app-location>
<app-route
  route="{{route}}"
  pattern="/:page"
  data="{{routeData}}"
  tail="{{subroute}}">
</app-route>

<iron-pages selected="[[page]]" attr-for-selected="name">
  <store-main-page 
    name="loja" 
    route="{{subroute}}" 
    categories="[[categories]]">
  </store-main-page>
  ...
</iron-pages>
...

具有以下store-main-page内容的元素:

<app-route
  route="{{route}}"
  pattern="/:page"
  data="{{routeData}}"
  tail="{{subroute}}">
</app-route>

<iron-pages selected="[[page]]" attr-for-selected="name">
  <category-page 
    name="categoria" 
    route="{{subroute}}" 
    selected-category="{{selectedCategory}}"
    cart="{{cart}}">
  </category-page>
  ...
</iron-pages>
...

因此,访问/路径将显示一个欢迎页面并访问/loja/categoria,该my-app调用store-main-page将调用category-page

我的问题是,我想在显示之前store-main-page对用户进行身份验证,如果未通过身份验证,则将其重定向到上的欢迎页面/有没有办法做到这一点app-route

我发现使用更改页面的唯一方法app-route是调用

this.set('route.path', 'path');

但这在链式路线上不起作用,就我而言,这将导致重定向到/loja/路径,这不是我想要的。

如何更改父元素上的路线?那可能吗?

安德鲁·太平洋

我刚刚发现这app-location只是iron-location之间的接口app-route

因此,我解决了将iron-location元素添加到子元素并更改其path属性的问题。

确切的代码是:

  <iron-location id="ironLocation"></iron-location>
...
</template>

<script>
...
  attached: function() {                    
    if (!userAuth()) {            
      this.$.ironLocation.set('path', '/');            
    } else {
      ...
    }                                      
  }
...

我不知道这是否是理想的解决方案,但是可以。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

聚合物嵌套的应用程序路由未正确映射

来自分类Dev

聚合物应用程序的服务器端路由

来自分类Dev

聚合物1.0-如何使用“页面”路由应用和更改URL

来自分类Dev

聚合物应用路由器Cordova支持

来自分类Dev

聚合物1.0-路由

来自分类Dev

聚合物应用程序的全球数据存储

来自分类Dev

如何为自定义聚合物元素创建方法并在主应用程序中调用它?

来自分类Dev

由聚合物组件制成的网站/应用程序在IE11上的加载速度非常慢

来自分类Dev

在iOS上执行聚合物点击重新路由

来自分类Dev

聚合物构建在包含多个子元素的聚合物元素上

来自分类Dev

如何在聚合物应用程序中实现主要功能

来自分类Dev

如何通过控制台中的“在Dartium中运行”来运行聚合物应用程序?

来自分类Dev

在PhoneGap应用程序中使用jQuery进行材质设计(聚合物)

来自分类Dev

Angular应用程序中聚合物模板的数据绑定问题

来自分类Dev

聚合物教程应用程序呈现空白页

来自分类Dev

带有灯箱的聚合物单页应用程序

来自分类Dev

角度应用程序中聚合物模板的数据绑定问题

来自分类Dev

如何使该聚合物应用程序具有响应能力?

来自分类Dev

聚合物应用程序未将路线参数传递给组件。

来自分类Dev

聚合物数据绑定在应用程序页面中不起作用

来自分类Dev

聚合物 (2.0) 是大型 MVC Web 应用程序用户界面的好选择吗?

来自分类Dev

聚合物应用程序抽屉切换在大屏幕中不起作用

来自分类Dev

聚合物-在聚合物元素内部显示元素

来自分类Dev

在现有应用中使用飞镖聚合物元素

来自分类Dev

聚合物造型元素

来自分类Dev

转换聚合物元素

来自分类Dev

应用程序路由覆盖模块路由

来自分类Dev

在Chrome扩展程序中使用聚合物元素

来自分类Dev

Safari 7.0上未渲染的聚合物元素

Related 相关文章

  1. 1

    聚合物嵌套的应用程序路由未正确映射

  2. 2

    聚合物应用程序的服务器端路由

  3. 3

    聚合物1.0-如何使用“页面”路由应用和更改URL

  4. 4

    聚合物应用路由器Cordova支持

  5. 5

    聚合物1.0-路由

  6. 6

    聚合物应用程序的全球数据存储

  7. 7

    如何为自定义聚合物元素创建方法并在主应用程序中调用它?

  8. 8

    由聚合物组件制成的网站/应用程序在IE11上的加载速度非常慢

  9. 9

    在iOS上执行聚合物点击重新路由

  10. 10

    聚合物构建在包含多个子元素的聚合物元素上

  11. 11

    如何在聚合物应用程序中实现主要功能

  12. 12

    如何通过控制台中的“在Dartium中运行”来运行聚合物应用程序?

  13. 13

    在PhoneGap应用程序中使用jQuery进行材质设计(聚合物)

  14. 14

    Angular应用程序中聚合物模板的数据绑定问题

  15. 15

    聚合物教程应用程序呈现空白页

  16. 16

    带有灯箱的聚合物单页应用程序

  17. 17

    角度应用程序中聚合物模板的数据绑定问题

  18. 18

    如何使该聚合物应用程序具有响应能力?

  19. 19

    聚合物应用程序未将路线参数传递给组件。

  20. 20

    聚合物数据绑定在应用程序页面中不起作用

  21. 21

    聚合物 (2.0) 是大型 MVC Web 应用程序用户界面的好选择吗?

  22. 22

    聚合物应用程序抽屉切换在大屏幕中不起作用

  23. 23

    聚合物-在聚合物元素内部显示元素

  24. 24

    在现有应用中使用飞镖聚合物元素

  25. 25

    聚合物造型元素

  26. 26

    转换聚合物元素

  27. 27

    应用程序路由覆盖模块路由

  28. 28

    在Chrome扩展程序中使用聚合物元素

  29. 29

    Safari 7.0上未渲染的聚合物元素

热门标签

归档