$http get in Angular Js

$http get in Angular Js

本文关键字:Angular Js in get http      更新时间:2023-09-26

结果页为空,不显示任何数据

Js 文件包含:

var Movies = angular.module('Movies', []);
Movies.controller('MoviesController',['$scope', '$http', function      
($scope, $http) {
    $http.get('http://localhost:19290/CinemaAngularJs/JS/data.json')
    .success(function (data) {
      $scope.Movies = data.Movs;
    })
    .error(function (data) {
      alert("Error occur");
    });
}]);

数据.json 文件包含:

"Movs":[
{
  "name":"Mision Impossible",
  "img":"mi",
  "year":"2012",
  "short":"Mision Impossible 2012 Mision Impossible 2012Mision Impossible  
2012 Mision Impossible 2012",
  "description":"Mision Impossible 2012 Mision Impossible 2012Mision 
},
{
.............
}]

HTML 文件包含 :

<html xmlns="http://www.w3.org/1999/xhtml" ng-app="Movies">
<head runat="server">
  <title></title>    
  <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/2.0.0-beta.1/angular2.min.js"></script>
  <script src="angular.min.js"></script>
  <script src="JS/controller.js"></script>
</head>
<body>
  <form id="form1" runat="server">
    <div ng-controller="MoviesController">
      <ul class="large-block-grid-4 small-block-grid-2">
        <li ng-repeat="mov in Movies">
           <h2>name : {{mov.name}}</h2>
           <img ng-src="Img/{{mov.img}}.jpg" alt="Image Here" />
           <h3>year : {{mov.year}}</h3>
           <h3>year : {{mov.short}}</h3>
           <h3>year : {{mov.description}}</h3>
         </li>
      </ul>
    </div>
  </form>
</body>
</html>

什么是代码错误?我应该怎么做才能运行代码?

请控制台.log(数据)并检查它。是有效的 JSON 对象还是 JSON 字符串?我认为我们需要:

$http.get('http://localhost:19290/CinemaAngularJs/JS/data.json').success(function (data) {
    var temp =JSON.parse(data);
    $scope.Movies = temp.Movs;
    })
    .error(function (data) {
        alert("Error occur");
    });

您的 JSON 无效,请尝试如下操作:

{
	"Movs": [{
		"name": "Mision Impossible",
		"img": "mi",
		"year": "2012",
		"short": "Mision Impossible 2012 Mision Impossible 2012Mision Impossible 2012 Mision Impossible 2012",
		"description": "Mision Impossible 2012 Mision Impossible 2012Mision"
	}]
}

我已经验证了这段代码,没关系。

您的角度代码是正确的,但您可以验证结果是否包含任何数据并显示警告。只是一个建议。

通过在浏览器中按 F12 运行开发人员工具。控制台窗口中是否显示任何错误消息?

这将向您显示语法中的任何错误...但不是你的逻辑!

更新:您的 JSON 无效。尝试将其粘贴到 www.jsoneditoronline.org 中,以便自己查看。

您可以将 JSON 更改为:

{
"Movs": [{
    "name": "Mision Impossible",
    "img": "mi",
    "year": "2012",
    "short": "Mision Impossible 2012 Mision Impossible 2012Mision Impossible 2012 Mision Impossible 2012",
    "description": "Mision Impossible 2012 Mision Impossible 2012Mision"
}]
}