如何根据变量是否为空来更改模板消息?

时间:2015-04-24 05:25:24

标签: angularjs

我正在使用此消息:

{{ qs.q.hint }}

如何制作以便消息显示"请选择正确答案"如果qs.q.hint为null或"" ?

3 个答案:

答案 0 :(得分:4)

使用ng-showng-hide指令非常简单:

<span ng-hide="qs.q.hint">Please choose the correct answer</span>

如果qs.q.hint引用的表达式是真实的(不是nullundefined0false或空字符串,则会隐藏跨度。可以使用ng-show或使用一元!布尔运算符来实现相反的操作。

答案 1 :(得分:2)

我推荐这个:

{{ qs.q.hint || "Please choose the correct answers" }}

这会监视$scope.qs.q.hint,一旦未定义或为null,消息就会更改

它也是最简洁的。您还可以将多个值链接到此类表达式,并返回第一个truthy值。例如,当用户单击“show me hint”时,您可能会让qs.q.hint返回字符串提示。但是如果他们选择了错误的答案,您可能还需要一个不同的假设函数来返回解释。然后你可以这样做,如果你有一个函数selectedValInfo()返回undefined,false,0或null,直到选择了一个值,然后返回一些信息。当qs.q.hint变得真实时,这将被覆盖。

{{ qs.q.hint || qs.q.selectedValInfo() || "Please choose the correct answers" }}

答案 2 :(得分:0)

只需使用角度ng-if和常规if condition

一样
  <span ng-if="qs.q.hint===null || qs.q.hint===''">Please choose the correct answer</span>

  <span ng-if="qs.q.hint!==null || qs.q.hint!==''">qs.q.hint</span>