<div ng-controller="ctrl" >
<div class = "allcontent">
<div class="userCard" ng-repeat="d in data">
<img class="cardImage" src="../../public/assets/dota2.png">
<h3 class="cardUsername">{{d.username}}</h3>
<span class="cardDescription">{{d.description}}</span>
<div class="cardSocialIcons">
<a ng-show={{d.showEmail}}><img class="cardMail" src="../../public/assets/mail.png"></a>
<a target = "_blank" href={{d.facebook}} ng-show={{d.facebook}}><img class="cardMail" src="../../public/assets/facebook.png"></a>
<a target = "_blank" href={{d.steam}} ng-show={{d.steam}}><img class="cardMail" src="../../public/assets/steam.png"></a>
<a target = "_blank" href={{d.xbox}} ng-show= showXboxIcon({{d.xbox}}) ><img class="cardMail" src="../../public/assets/xbox.png"></a>
<a target = "_blank" href={{d.psn}} ng-show=showPsnIcon({{d.psn}}) ><img class="cardMail" src="../../public/assets/psn.png"></a>
</div>
</div>
</div>
</div>
</div>
<script>
function showXboxIcon(xbox) {
if (xbox != "" && xbox != null && xbox != undefined) {
return true;
}
else {
return false;
}
}
function showPsnIcon(psn) {
if (psn != "" && psn != null && psn != undefined) {
return true;
}
else {
return false;
}
</script>
我想显示一个与用户使用的游戏网络相关的图标,以及指向他在该网络上的个人资料的链接,但前提是用户在该网络上拥有帐户。
在本例中:d.xbox
和 d.psn
存在,因此应该向用户显示图标。
事实并非如此,我犯了什么错误?
(肯定是一个简单的语法错误)
最佳答案
不需要{{}}
,因此更改为ng-show="showXboxIcon(d.xbox)"
关于javascript - 尽管 d.xbox 存在,但 ng-show={{d.xbox}} 未解析为 true,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45772802/