未捕获的 TypeError:app.all 不是函数
Posted
技术标签:
【中文标题】未捕获的 TypeError:app.all 不是函数【英文标题】:Uncaught TypeError: app.all is not a function 【发布时间】:2017-06-21 07:40:21 【问题描述】:我这里有一个非常简单的 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>
我在控制台中不断收到这个。
如何防止这种情况发生?
我正在关注这个:
https://***.com/a/21455819/4480164
【问题讨论】:
app.all 是 nodejs(服务器端 javascript)的中间件。它对客户端中的 angularJS 无效。您引用的答案很清楚。 您正在混合服务器端和客户端代码。您使用的是什么服务器端语言? 只要去掉app.all
,因为你似乎并没有在跨域工作
我正在尽我所能避免 cors 错误。我只想通过 Angular 获取此 URL:d.biossusa.com/api/distributor?key=bunlongheng
@charlietfl : app.all = ? 的整个块
【参考方案1】:
只是指出这一点是因为我无法评论由于低代表,但你也打电话给ng-app="myApp"
,它正在寻找myApp
的模块调用,而你没有myApp
的模块调用,所以你的控制器也不会正确触发,可能会将您的myApp
重新命名为app
?
【讨论】:
我的代码应该是什么样子才能让它在没有控制台错误的情况下运行? 您在 html 中调用ng-app="myApp"
,但您将模块声明为 var app = angular.module()
,请将 ng-app 中的值更改为 ng-app="app"
,因为您的控制器正在寻找模块调用和因为您将该调用设置为 app.controller....并且您在 html 中调用了 myApp,所以您的 html 不会正确触发
<div ng-app="myApp" ng-controller="myCtrl">
到 <div ng-app="app" ng-controller="myCtrl">
没有您在脚本中的哪个位置将应用模块声明为 myApp
您似乎对 Angular JS 了解很多。你对角度 CORS 错误预防有什么看法吗?你介意帮助我调查这个我正在努力绕过它的错误吗?这里=***.com/questions/42032996/…以上是关于未捕获的 TypeError:app.all 不是函数的主要内容,如果未能解决你的问题,请参考以下文章
JQuery UI'可拖动不是函数'未捕获的TypeError
未捕获的 TypeError:Vue.elementDirective 不是函数
未捕获的 Promise 错误:TypeError:成员不是函数
未捕获的 TypeError:Object(...)(...).Class 不是函数