gpt4 book ai didi

javascript - 如何使用 AngularJS 从 Json 中检索数据?

转载 作者:行者123 更新时间:2023-11-28 03:10:43 24 4
gpt4 key购买 nike

我最近尝试使用 AngularJS 从 JSON 文件中检索数据。但是我不知道该怎么做;我已尝试这样做,但它不起作用,有人可以告诉我哪里出错了吗?

<div ng-repeat="stuff in otherStuff">
  <p>Title: {{stuff.name}}</p>
  <p>Url: {{stuff.url}}</p>
</div>

数据 Controller :

$scope.otherStuff = {};
jsonFactory.getOtherStuff()
  .then(function (response) {
    $scope.otherStuff = response.data.components;
  }, function (error) {
    console.error(error);
  });

json工厂:

angular.module('generatorMeanstackApp')
  .factory('jsonFactory', function ($q, $http) {
    return {
      getOtherStuff: function () {
        var deferred = $q.defer(),
          httpPromise = $http.get('data.json');

        httpPromise.then(function (response) {
          deferred.resolve(response);
        }, function (error) {
          console.error(error);
        });

        return deferred.promise;
      }
    };
  });

我的 JSON 数据示例:

{
  "name": "Blogs",
  "url": "blogs.my-media-website.com/*",
  "dependsOn": ["Wordpress MU"],
  "technos": ["PHP", "Wordpress"],
  "host": { "Amazon": ["?"] }
},

最佳答案

在您的 Controller 中,对数据(通过服务)的引用嵌套太深,应该是:

$scope.otherStuff = response.data;

代替:

$scope.otherStuff = response.data.components;

您可以将 JSON 包装在一个数组中:

[
{...},
{...},
{...}
]

此外,如果您使用 yeoman 搭建了脚手架,data.json 需要位于 app/ 路径中。如果它在路线之外,您将收到 404。

关于javascript - 如何使用 AngularJS 从 Json 中检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30708561/

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