我有一个名为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')
});
答案 0 :(得分:0)
我想我应该在把手模板/视图中而不是在组件中处理这个(显示实际链接)。
要解决此问题,我要在组件中添加specificError
属性,默认设置为false。在我的errorMessage验证中,如果出现与此特定情况匹配的错误消息,则使用this.toggleProperty('specificError')
在我的车把模板中,我将检查是否存在此类错误,并在那里显示错误。