【发布时间】:2013-07-10 03:50:55
【问题描述】:
路线可以是动态的吗?我认为这是一个重要功能,因为:
- 未经身份验证的用户无法访问大多数路由
- 用户验证后,应添加新路由
似乎许多网络应用程序都会共享这些要求。如何使用 Router.map 来实现这些目标?
【问题讨论】:
-
这个要点可以帮助你gist.github.com/machty/5647589
标签: ember.js
路线可以是动态的吗?我认为这是一个重要功能,因为:
似乎许多网络应用程序都会共享这些要求。如何使用 Router.map 来实现这些目标?
【问题讨论】:
标签: ember.js
我不确定动态创建新路由是否是个好主意,因为它可能会搞砸很多事情。如果您只需要它进行身份验证,那么我建议您查看ember-auth。或者您可以编写自己的身份验证机制,如之前评论中推荐的gist。
如果您需要从 UI 中隐藏一些链接,那么您可以从您的视图中使用一些 if-else 构造,例如:
{{if isAuthenticated}}
<!-- Show some links -->
{{else}}
<!-- Show login link -->
{{/if}}
请注意,这只会隐藏链接。用户仍然可以直接输入路由 URL,因此需要 ember-auth 或自定义身份验证机制,通过在 beforeModel 钩子中检查 isAuthenticated 标志来防止加载路由。
【讨论】: