Angular2使用Route Guard来控制用户是否可以导航到或远离给定路由,因此,如果未经授权的用户尝试访问路径路线路线守卫将保护。
在聚合物1.0中有其他路线防护其他方法吗?如果不是如何实现?
我不知道任何现有的实现,尽管搜索http://webcomponents.org总是一个好主意,因为一个人可能会弹出任何第二个。
。要自己实施此功能,首先创建某种权利管理行为(或聚合物2中的Mixin类)(这可能会查询Web服务中的{right1: Array<User>, ...}
地图;但不要忘记CACHING等等。。)有一个方法checkRight(rightName, user)
。然后,您可以将该行为/类混合到消耗元素,并将方法checkRight
与要守卫的任何元素绑定在一起,例如Ironpages的Chidden
-attribute:
<dom-module id="my-app">
<template>
<iron-pages ...>
<my-page-1 hidden$="[[checkRight('right1', currentUser)]]"></my-page-1>
<my-page-2 hidden$="[[checkRight('right2', currentUser)]]"></my-page-2>
...
</iron-pages>
</template>
<script>
Polymer({
is: 'my-app',
properties: {
currentUser: {...}
},
behaviors: [My.RightsManagedBehavior]
});
</script>
</dom-module>