Angularjs $ http.get调用在页面加载时出错

时间:2014-11-23 14:46:44

标签: javascript angularjs

我是angularjs的新手,在第一个例子中我尝试了$ http.get "未捕获错误:[$ injector:modulerr]无法实例化模块getHubViewer,原因如下: 错误:[$ injector:nomod]模块' getHubViewer'不可用!您要么错误拼写了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。"

当我评论来电时,一切正常。有人可以帮忙。

url:http://plnkr.co/edit/Ww4S2GgVXYGauwdbINJS?p=preview

<html ng-app="getHubViewer">

  <head>
    <script data-require="angular.js@1.2.25" data-semver="1.3.0" src="//code.angularjs.org/1.3.0/angular.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js"></script>
  </head>

  <body ng-controller="MainController">
    <h1>{{message}}</h1>
  </body>

</html>

的script.js:

(function() {
  var app = angular.module("getHubViewer", []);
  var MainController = function($scope, $http) {
    //var promise = $http.get('https:\\api.github.com\users\robconery');
    $scope.message = "Hello, Angular";
  };
  app.controller("MainController", ["$scope","$http",MainController]);
}());

由于

3 个答案:

答案 0 :(得分:1)

您需要将反斜杠更改为斜杠:

var promise = $http.get('https://api.github.com/users/robconery');

它表示&#34;未知符号&#34;在你写的错误之前。搜索这些错误,它们比长角度错误消息更不显眼,并且它们通常是造成问题的原因。

Plunker

答案 1 :(得分:1)

使用/代替\ 在网址格式中,您应该使用/

var promise = $ http.get(&#39; https://api.github.com/users/robconery&#39;);

答案 2 :(得分:0)

你正在使用错误的&#34;斜杠&#34;。网址由简单的斜杠和#34; /&#34;而不是你正在使用的后背。

使用https://api.github.com/users/robconery代替https:\ api.github.com \ users \ robconery

错误不言自明:&#34;非法角色&#34;。反斜杠保留用于转义某些特殊字符。