首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AngularJS动态计算ng-重复内的另一个数组的文本内容

AngularJS动态计算ng-重复内的另一个数组的文本内容
EN

Stack Overflow用户
提问于 2014-05-01 22:23:13
回答 1查看 198关注 0票数 0

我有以下HTML代码和数据。

联署材料:

代码语言:javascript
复制
scope.stories=["1","2","3"]
scope.insights=[
{id:"1",name:"something"},
{id:"2",name:"something"},
{id:"3",name:"something"}]



'<div ng-click=""  ng-repeat="story in stories"><h4>{{}}</h4></div>'

我想要的是从id中获取名称,并在"h4“标记中显示它。我有很多其他的数据存储在故事和洞察力中,这也是我尝试这样做的原因。

原因是我还有另外一个在外面重复。

真正的scope.stories是类似于[{name:story1,stories:1,2,3,4},{name:story2 2,stories:1,3}]。因此,如果我把洞察力放在每一个故事里,那将是多余的,因为我可能有更多的故事和洞察力。

有人能帮我吗?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-01 23:37:28

要在控制器中添加如下方法:

代码语言:javascript
复制
$scope.getInsightFromStory = function(story) {
  var result;

  angular.each($scope.insights, function(insight) {
    if (insight.id === story) {
      result = insight;
    }
  });

  return result;
};

然后在html中执行以下操作:

代码语言:javascript
复制
<div ng-repeat="story in stories" >
  <h4>{{getInsightFromStory(story).name}}</h4>
</div>

如果你感到冒险,你可以用下划线很容易地找到你的洞察力:

代码语言:javascript
复制
$scope.getInsightFromStory = function(story) {
  return _.where($scope.insights, {id: story})[0]
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23417656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档