Ember.js中是否可以使用动态路线?

时间:2013-07-10 03:50:55

标签: ember.js

路线可以动态吗?我认为这是一个重要的特征因为:

  1. 未经过身份验证的用户无法访问大多数路由
  2. 用户验证后应添加新路由
  3. 似乎很多网络应用都会分享这些要求。如何使用Router.map来实现这些目标?

1 个答案:

答案 0 :(得分:0)

我不确定动态创建新路由是不是一个好主意,因为它可能会搞砸很多东西。如果您只需要此身份验证,那么我建议您查看ember-auth。或者,您可以编写自己的身份验证机制,就像之前评论中推荐的gist一样。

如果您需要隐藏UI中的某些链接,那么您可以在视图中使用一些if-else结构,如:

{{if isAuthenticated}}
  <!-- Show some links -->
{{else}}
  <!-- Show login link -->
{{/if}}

请注意,这只会隐藏链接。用户仍然可以直接输入路由URL,因此需要使用ember-auth或自定义身份验证机制,通过在beforeModel hook中检查isAuthenticated标志来阻止路由加载。