如何在ANGULARJS中编写VISIBILITY if-else条件?

时间:2015-03-23 19:58:00

标签: javascript angularjs if-statement

如何为从Json提取到Angularjs的数据写入条件?

示例:如果用户 FIRM NAME 存在显示,如果用户 FULL NAME 存在显示其他显示 REALNAME

我有一个获取数据的工作示例

第25行 <h3 class="moduletitle">Name : {{ module.realname }}</h3>

请在PLUNKER

中查看

我希望我能与PLUNKER一起获得工作代码更新

2 个答案:

答案 0 :(得分:0)

我可以建议你有一个函数返回你想要显示的实体。然后使用ng-show / ng-hide来显示/隐藏您想要的内容。
例如:

function pseudoDecide(){
  var displaythis = "";

  if(/*boolean exp*/){ displaythis = "firm" }
  else if(/*boolean exp*/) { displaythis = "full" }
  else(/*boolean exp*/) { displaythis = "real" }

  return displaythis;
}

然后<div ng-show="{{psedoDecide() === 'firm'}}>"等等,就像那样。

答案 1 :(得分:0)

使用AngularJS 1.1.5+,您可以在表达式中使用三元运算符。在你的情况下,我相信你想要的东西:

<h3 class="moduletitle">Name : {{ module.firmname ? module.firmname : (module.fullname ? module.fullname : module.realname)) }}</h3>

如果你不想在模板中使用嵌套的三元组,你也可以选择这条路线:

控制器中的某处:

$scope.pickName = function (module) {
  var val;

  if (module.firm_name) {
    val = module.firm_name;
  } else if (module.full_name) {
    val = module.full_name;
  } else {
      val = module.realname;
  }

  return val;
};

在你的模板中:

<h3 class="moduletitle">Name : <span ng-bind="pickName(module)"></span></h3>