gpt4 book ai didi

json - 如果键存在,AngularJS 显示数据

转载 作者:行者123 更新时间:2023-12-02 12:12:41 25 4
gpt4 key购买 nike

我有一组通过 $http 调用传入的数据,采用 JSON 格式。事情是这样的:

{
"projects": [
{ "url": "http://project-1-url.com", "src": "images/projects/1.png", "title": "Project 1", "tags": ["AngularJS","Web Design","Self Project"]},
{ "src": "images/projects/2.png", "title": "Project 2","tags": ["HTML","Plugin","Self Project"]}
]
}

您可能已经注意到,JSON 中的少数对象没有 URL 参数。我正在使用 ngRepeat 来显示如下数据:

<ul>
<li ng-repeat="project in projects">{{ project.title }}</li>
</ul>

其中,项目来自 Controller :

app.controller('MyCtrl', function ( $scope, $http) {
$scope.projects = null;
$http.get("http://api-endpoint-here").then(function (response) {
$scope.projects = response.data;
});
});

我想要一些逻辑,使具有 URL 属性的 JSON 对象应显示为链接,而那些不具有 URL 属性的 JSON 对象应仅输出标题。很像:

<!-- If JSON has URL -->
<li ng-repeat="project in projects"><a href="project.url">{{ project.title }}</a></li>
<!-- If JSON DO NOT have URL -->
<li ng-repeat="project in projects">{{ project.title }}</li>

我应该在 Controller 中准备一些逻辑吗?或者 View 中是否可以使用一些 ngShow 逻辑?

最佳答案

不是最漂亮的,但很有效......

<li ng-repeat="project in projects">
<span ng-if="project.url"><a href="project.url">{{ project.title }}</a></span>
<span ng-if="!project.url">{{ project.title }}</span>
</li>

关于json - 如果键存在,AngularJS 显示数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32105262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com