未捕获的类型错误:app.all不是一个函数。

3
我这里有一个非常简单的Angular页面。
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>

<div ng-app="myApp" ng-controller="myCtrl">

  <p>Today's welcome message is:</p>
  <h1>{{myData}}</h1>

</div>

<script>

  var app = angular.module('corsApp', []);

  app.config(['$httpProvider', function($httpProvider) {
    $httpProvider.defaults.useXDomain = true;
    delete $httpProvider.defaults.headers.common['X-Requested-With'];

  }

  ]);


  // Added all header request and response.
  app.all('/*', function (request, response, next) {
    response.header("Access-Control-Allow-Origin", "*");
    response.header("Access-Control-Allow-Headers", "X-Requested-With");
    response.header("Access-Control-Allow-Methods", "GET, POST", "PUT", "DELETE");
    next();
  });



  app.controller('myCtrl', function($scope, $http) {
    $http.get("welcome.htm")
    .then(function(response) {
        $scope.myWelcome = response.data;
    });
});


</script>

我在控制台里一直看到这个错误信息:

未捕获的 TypeError: app.all 不是一个函数

我该如何避免这个错误?

我正在按照以下步骤进行操作:

https://dev59.com/_2Ei5IYBdhLWcg3wPaZh#21455819


1
app.all是用于nodejs(服务器端JavaScript)的中间件。它对于客户端的angularJS无效。你所引用的答案已经明确说明了这一点。 - Brian Driscoll
1
你正在混合使用服务器端和客户端代码。你使用的是哪种服务器端语言? - charlietfl
只需摆脱 app.all,因为似乎您并没有跨域工作。 - charlietfl
我正在尽我所能避免CORS错误。 我只想通过Angular对此URL进行GET请求:http://d.biossusa.com/api/distributor?key=bunlongheng - code-8
@charlietfl:整个 app.all = ? 代码块是什么? - code-8
显示剩余4条评论
1个回答

2

我想提醒一下,由于我的声望较低,无法发表评论,但是您还在调用ng-app="myApp",这是在寻找一个名为myApp的模块调用,而您没有对myApp进行模块调用,因此您的控制器也不会正确执行,也许可以将您的myApp重命名为app


我的代码应该长什么样子才能让它运行而不出现控制台错误? - code-8
1
你在HTML中调用了 ng-app="myApp",但是你的模块声明为 var app = angular.module(),请将ng-app中的值更改为 ng-app="app",因为你的控制器正在寻找该模块调用,并且因为你将该调用设置为 app.controller... 如果你在HTML中调用了 myApp,那么你的HTML不会正确触发。 - McMintz
<div ng-app="myApp" ng-controller="myCtrl">翻译为<div ng-app="app" ng-controller="myCtrl"> - McMintz
你似乎对Angular JS非常了解。你知道如何防止angular CORS错误吗?你介意帮我查看一下这个错误吗?这里是链接:http://stackoverflow.com/questions/42032996/angularjs-http-cors-get-nginx - code-8

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接