Ember.js:从数据库中提取时的内部超链接

Ember.js:从数据库中提取时的内部超链接,ember.js,Ember.js,我的数据库有时包含指向我的Ember.js应用程序中其他路由的常规HTML a标记的超链接。问题是,我不知道如何拥有它,所以这些链接将在余烬中转换,而不是必须重新加载页面。有没有办法绕过这个问题 示例:我有一个用户创建的博客/博客帖子。此博客文章将链接到网站的其他部分,如联系人/联系人。我怎样才能让博客文章中的链接通过余烬转换,而不是每次点击链接时都重新加载应用程序 编辑:没有找到一个简单的方法来解决这个问题在余烬。我认为这将是一个更普遍的问题。我确实找到了使用jQuery解决这个问题的基本方法

我的数据库有时包含指向我的Ember.js应用程序中其他路由的常规HTML a标记的超链接。问题是,我不知道如何拥有它,所以这些链接将在余烬中转换,而不是必须重新加载页面。有没有办法绕过这个问题

示例:我有一个用户创建的博客/博客帖子。此博客文章将链接到网站的其他部分,如联系人/联系人。我怎样才能让博客文章中的链接通过余烬转换,而不是每次点击链接时都重新加载应用程序

编辑:没有找到一个简单的方法来解决这个问题在余烬。我认为这将是一个更普遍的问题。我确实找到了使用jQuery解决这个问题的基本方法。我捕获内容区域内的所有点击,并通过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

您需要存储路由名称,而不是存储HTML元素,因为如果我理解得很好,您可以存储:

<a href="/contact"></a>
所以,如果你重写你的逻辑,只存储路由名称,你可以让余烬处理

如果您的示例中有存储路由名称/联系人的变量,并且该变量是产品的成员,那么您可能可以这样访问它:

product.link
您可以将此字符串传递给{{link to}}帮助器,这将产生正确的余烬链接:

{{#link-to product.link}}Link{{/link-to}}

谢谢你的回答,但我应该更详细一些。链接将与其他HTML内容混合在一起。管理员用户可以使用所见即所得编辑器对内容进行编辑。我想允许他们使用普通的HTML元素,最简单的方法就是写一篇博客文章。用户应该能够创建内容,允许链接到网站的不同部分。好的,我明白了。解决方案是为HTML锚链接创建解析逻辑,并从HTML标记中提取路由名称、样式、元素值,然后在Ember中使用指向helper的链接,但这很复杂。
{{#link-to product.link}}Link{{/link-to}}