【问题标题】:Push object with angular foreach用角度 foreach 推动物体
【发布时间】:2017-03-06 04:07:57
【问题描述】:

我有一个像这样的数据类型对象:

["Tag Name13", "Tag Name12"]

但是如果我用这个脚本推送:

var list_tag = [];

angular.forEach(retrive_data.tags, function(item){
   list_tag.push(item.label);
});

$scope.tag = list_tag;

console.log 中的输出是

[Object, Object, Object]

然后我打开这样的结构:

Array[3]
0
:
Object
1
:
Object
2
:
Object

是的,我的数据已推送,但数据结构已更改,我无法在下一步中处理。我错了吗 ?请给我解决方案,谢谢

更新

Array[2]
0 : "Tag Name13"
1 : "Tag Name12"

Array[2]

_id:"58a28112a6551f5b8a4fc0d3"
active:0
created_at:"2017-02-14 11:01:22"
description:"Lorem ipsum dolor sit amet, consectetur adipisci13"
image:"http://placehold.it/300x30013"
label:"Tag Name13"
meta_description:"Meta Description Tag Name13"
meta_keyword:"Meta Keywoprd Tag Name13"
meta_title:"Meta Title Tag Name13"
priority:100
related:"[]"
thread_count:0
thread_ids:Array[1]
updated_at:"2017-03-03 11:53:20"
url:"tag-name13"

【问题讨论】:

  • 发布retrive_data.tags数组
  • 显示你的 retrive_data.tags 对象
  • 你的意思是,在我推动之前? @Gaurav
  • 是初始 retrive_data.tags 对象
  • 我编辑了我的代码@Gaurav

标签: javascript angularjs angularjs-directive foreach angularjs-scope


【解决方案1】:

首先你需要获取另一个变量,只使用作用域变量

检查我的代码

$scope.tags = [];

angular.forEach(retrive_data.tags, function(item){
   $scope.tags.push(item.label);
});

console.log($scope.tags) //output ["Tag Name13", "Tag Name12"]

【讨论】:

  • 感谢您的回答。但我确实做到了。但还是不行。
  • 如果您提供的对象 retrive_data.tags 相同,那么这种方法可以正常工作,可能是您在其他地方犯了一些错误。
【解决方案2】:
 var list_tag = [];

 angular.forEach(retrive_data.tags, function(item){
  list_tag.push(item);
});

$scope.tag = list_tag;

我觉得应该和上面一样

【讨论】:

  • 然后我从哪里得到“Tag Name12”标签?我尝试了您的代码但无法正常工作
  • 顺便说一句,我使用 item.label 通过 id 获取数据标签标签。如果我只使用 "item" ,则显示错误
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-28
  • 1970-01-01
  • 2017-07-29
  • 2013-03-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多