如何在模板/视图中重构此逻辑以使用单行if语句(AngularJS 1.x)

如何在模板/视图中重构此逻辑以使用单行if语句(AngularJS 1.x),angularjs,angularjs-scope,angularjs-ng-if,Angularjs,Angularjs Scope,Angularjs Ng If,我正在修复AngularJS应用程序中的一些小问题——我遇到了下面的逻辑,它只显示one链接 以伪代码样式 if (data.serviceId exists in the DOM) { display link & populate the href from data.serviceId value } elseif(commentReply.sender.serviceId exists in the DOM) { display the link & po

我正在修复AngularJS应用程序中的一些小问题——我遇到了下面的逻辑,它只显示one链接

以伪代码样式

if (data.serviceId exists in the DOM) {
    display link & populate the href from data.serviceId value
} elseif(commentReply.sender.serviceId exists in the DOM) {
    display the link & populate the href from commentReply.sender.serviceId value
}
模板中的代码本身如下所示,我如何修改下面的代码,使其更清晰,并且我不会使用某种形式的单行第三语句复制行

<a ng-if="data.serviceId" ng-href="/#/profile/{{data.serviceId}}">View</a>
<a ng-if="commentReply.sender.serviceId" ng-href="/#/profile/{{commentReply.sender.serviceId}}">View</a>

显示一个链接并从控制器获取您的
href
值:

<a ng-href="/#/profile/{{ myCtrl.getServiceIdHref() }}">View</a>

显示一个链接并从控制器获取您的
href
值:

<a ng-href="/#/profile/{{ myCtrl.getServiceIdHref() }}">View</a>
例如:

<a data-ng-href="/#/profile/{{data.serviceId && !commentReply.sender.serviceId ? data.serviceId : commentReply.sender.serviceId}}">View</a>


例如:

<a data-ng-href="/#/profile/{{data.serviceId && !commentReply.sender.serviceId ? data.serviceId : commentReply.sender.serviceId}}">View</a>



谢谢@Omri这是两种方法中最好的一种,老实说,但我只是需要一些“快速”的东西,所以选择了另一个答案,但这个答案很好地说明了“最佳”的方法谢谢@Omri这是两种方法中最好的一种,老实说,但我只是需要一些“快速”的东西,所以选择了另一个答案,但选择了这个答案很好地说明了实现这一点的“最佳”方法