【发布时间】:2015-09-28 16:43:29
【问题描述】:
我的数据库有时包含指向我的 Ember.js 应用程序中其他路由的超链接(常规 HTML“a”标签)。问题是我不知道如何拥有它,因此这些链接将在 Ember 中转换,而不必重新加载页面。有什么办法可以解决这个问题?
示例:我有一个用户创建的博客 (/blog) 帖子。此博客文章将包含指向网站其他部分的链接,例如联系人 (/contact)。如何让博文中的链接通过 Ember 进行转换,而不是每次点击链接时重新加载应用程序?
编辑:尚未找到在 Ember 中解决此问题的简单方法。我认为这将是一个比它更常见的问题。我确实找到了一种使用 jQuery 解决问题的基本方法。我捕获内容区域内的所有“a”点击并通过 try/catch 块运行它。如果它不能通过 Ember 转换,那么它会抛出一个错误,这意味着我们可以使用传统的 Javascript 进行路由。这可能远非最佳,但对我来说已经足够了。
Ember.$('.ember-linkify a').click (e) ->
e.preventDefault()
a = $(this).attr 'href'
try
@transitionTo a
catch error
window.location.href = a
【问题讨论】:
标签: ember.js