返回Ember组件中的超链接

时间:2017-03-16 17:14:41

标签: javascript ember.js

我有一个名为alert-message的Ember组件,它返回一个更加用户友好的错误消息以进行验证。其中一条错误消息包含一个ID(我在这里硬编码) - 我想将ID转换为超链接并将其显示在消息中。

据我所知,使用str.link()方法只需创建一个表示HTML链接元素代码的字符串。

我目前提供的内容如下: "Cannot update this item with <a href="/items/31010-2001-20311">31010-2001-20311</a>."

如何将生成的html转换为实际链接?或者这是我应该在车把片中做的事情呢?

在我的组件模板中,我渲染: {{alert-message errorMessage= errorMessage}}

import Ember from 'ember';
    export default Ember.Component.extend({
      errorMessage: function () {
        const status = this.getWithDefault('status', '');
          if (status === '409') {
            var id = 31010-2001-20311;
            var idLink = id.link('/items/31010-2001-20311');
            return `Cannot update this item with ${idLink}.`;
            }
        {
          return status;
        }
      }.property('status')
    });

1 个答案:

答案 0 :(得分:0)

我想我应该在把手模板/视图中而不是在组件中处理这个(显示实际链接)。

要解决此问题,我要在组件中添加specificError属性,默认设置为false。在我的errorMessage验证中,如果出现与此特定情况匹配的错误消息,则使用this.toggleProperty('specificError')

将specificError切换为true

在我的车把模板中,我将检查是否存在此类错误,并在那里显示错误。