Javascript 如何使用Ember.js在模板中显示特定字符串而不是模型值?

Javascript 如何使用Ember.js在模板中显示特定字符串而不是模型值?,javascript,ember.js,Javascript,Ember.js,我有一个余烬路线显示了一系列记录。该模型包括状态,如下所示: status: DS.attr('number'), 状态值将返回为:-1、0或1 我可以使用手柄为模板中的每条记录显示该值:{{{modelName.status}。这样,每个记录的状态反映为:-1、0、1 我想做以下工作: 如果status的值为-1,则显示字符串“Error”。 如果状态值为0,则显示字符串“已完成”。 如果状态值为1,则显示字符串“待定” 这可能吗?那么: status: DS.attr('number'),

我有一个余烬路线显示了一系列记录。该模型包括
状态
,如下所示:

status: DS.attr('number'),
状态值将返回为:
-1
0
1

我可以使用手柄为模板中的每条记录显示该值:
{{{modelName.status}
。这样,每个记录的状态反映为:
-1
0
1

我想做以下工作:

如果status的值为-1,则显示字符串“Error”。
如果状态值为0,则显示字符串“已完成”。
如果状态值为1,则显示字符串“待定”

这可能吗?

那么:

status: DS.attr('number'),
statusLabel: function(){
  var statuses = ['Error', 'Completed', 'Pending'];
  return statuses[this.get('status') + 1];
}.property('status')
然后在模板中:

{{modelName.statusLabel}}

你的问题不太清楚,因为我的选项灰烬信托助手将帮助你。

您需要安装Ember trust helper


{{if(不是eq modelName.status-1)}错误

第一个答案的一个小补充-假设我的需求是:

如果status的值为-1,则显示字符串“Error”。
如果状态值为0,则显示字符串“已完成”。
如果status的值大于0,则显示字符串“Pending”。

statusLabel:function(){
var currentStatus=this.get('status');
变量状态=['Error'、'Completed'、'Pending'];
如果(当前状态>0){
返回状态[2];
}否则{
返回状态[this.get('status')+1];
}
}.property('status'),