Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
呈现JSON对象-AngularJS时我缺少什么_Angularjs_Json - Fatal编程技术网

呈现JSON对象-AngularJS时我缺少什么

呈现JSON对象-AngularJS时我缺少什么,angularjs,json,Angularjs,Json,在这方面,我为什么不能访问 {{ cartItem.selectedSeller.registered_name }} 代码 {{cartItem.selectedSeller}}//我可以访问此 注册卖方名称: {{cartItem.selectedSeller.registered_name}}//但不是这个 =============================== 据我所知,我们将[]放在数组中,否则我们可以使用访问对象属性。我肯定在这里遗漏了一些细微的逻辑。我想显示每个购物车

在这方面,我为什么不能访问

{{ cartItem.selectedSeller.registered_name }}
代码


{{cartItem.selectedSeller}}//我可以访问此
注册卖方名称:
{{cartItem.selectedSeller.registered_name}}//但不是这个
===============================

据我所知,我们将
[]
放在数组中,否则我们可以使用
访问对象属性。我肯定在这里遗漏了一些细微的逻辑。我想显示每个购物车产品的卖家名称。

您的json格式无效。试试看

通过键
selectedSeller
可以访问字符串,但不能访问对象,其中显示了
register\u name
属性

另外,使用
json
filter也是一个好主意,但这取决于您使用的版本

{{ foo | json }}

在这里我可以看到一个关于解析json的建议,它也解决了您的问题,但我不建议您采用这种方式,以一致的格式保存json后端数据,并且不要通过解析器或一些自定义方法在客户端重新映射它。

cartItem.selectedSeller是一个字符串,只需在控制器中将字符串解析为JSON,如下所示:

$scope.cartItems = [];
$http({
    method: 'GET',
    url: 'data.json'
  }).success(function(data) {
    data.forEach(function(a){
      a.selectedSeller = JSON.parse(a.selectedSeller);
      $scope.cartItems.push(a);
    });
  });

理解/回答问题所需的所有信息都应直接包含在问题正文中——如果可能,它不能依赖于外部链接。您希望在视图中显示什么?json看起来无效,并且还尝试运行内部循环以获取对象值,因为对象本身包含另一个objectTrue。json是无效的更正JSON及其工作感谢您如此快速的回复,但我不想在客户端付出额外的努力:)。
{{ foo | json }}
$scope.cartItems = [];
$http({
    method: 'GET',
    url: 'data.json'
  }).success(function(data) {
    data.forEach(function(a){
      a.selectedSeller = JSON.parse(a.selectedSeller);
      $scope.cartItems.push(a);
    });
  });