Javascript 错误:[ng:areq]参数';迎宾控制器';不是函数,未定义
我正试着和Django合作。我很困难地用Django和Angular使它工作,但现在我又犯了一个错误。每次我加载它时,都会出现以下错误Javascript 错误:[ng:areq]参数';迎宾控制器';不是函数,未定义,javascript,angularjs,django,angular-controller,Javascript,Angularjs,Django,Angular Controller,我正试着和Django合作。我很困难地用Django和Angular使它工作,但现在我又犯了一个错误。每次我加载它时,都会出现以下错误 Error: [ng:areq] Argument 'GreetingController' is not a function, got undefined 我尝试了许多关于堆栈溢出的其他解决方案链接,但都没有解决我的问题 下面是我保存为app.js的角度片段 var app = angular.module('ABC',['ngRoute', 'ui.bo
Error: [ng:areq] Argument 'GreetingController' is not a function, got undefined
我尝试了许多关于堆栈溢出的其他解决方案链接,但都没有解决我的问题
下面是我保存为app.js的角度片段
var app = angular.module('ABC',['ngRoute', 'ui.bootstrap']).
controller('GreetingController', ['$scope', function($scope) {
$scope.greeting = 'Hola!';
}]);
app.config(function($interpolateProvider, $routeProvider){
//$interpolateProvider.startSymbol('[[');
//$interpolateProvider.endSymbol(']]');
$routeProvider.when('/about', {
templateUrl: 'views/about.html'
}).when('/login',{
templateUrl: '/views/login/login.html'
}).otherwise({
redirectTo: '/about'
});
});
还有我的HTML代码片段
{% load staticfiles %}
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="/assets/js/bower_components/bootstrap/dist/css/bootstrap.css">
<link rel="stylesheet" href="/assets/style/main.css">
<link rel="stylesheet" href="/assets/style/container.css">
<link rel="stylesheet" href="/assets/style/button.css">
<script src="/assets/js/bower_components/jquery/dist/jquery.js"></script>
<script src="/assets/js/bower_components/bootstrap/dist/js/bootstrap.js"></script>
<script src="/assets/js/bower_components/angular/angular.js"></script>
<script src="/assets/js/bower_components/angular-route/angular-route.js"></script>
<script src="/assets/js/bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script>
<script src="/app.js"></script>
<script src="/views/login/login.js"></script>
</head>
<body ng-app="ABC">
<div class="container-fluid">
<nav class="navbar navbar-default navbar-fixed-top navbar-inverse">
<ul class="nav navbar-nav">
<li><a href="#home">Home</a></li>
<li><a href="#login">Login</a></li>
<li><a href="#signup">Sign Up</a></li>
</ul>
</nav>
</div>
<div id="wrap" ng-controller="GreetingController">
<div class="container-fluid" id="main">
<ng-view></ng-view>
</div>
</div>
</body>
</html>
{%load staticfiles%}
如果有人能调查此事并告诉我解决方案,我将不胜感激
编辑:请找到源代码的链接
提前感谢。您的脚本执行不正确。您可以移动底部的
,以便在DOM中呈现HTML元素后执行脚本吗
{% load staticfiles %}
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="/assets/js/bower_components/bootstrap/dist/css/bootstrap.css">
<link rel="stylesheet" href="/assets/style/main.css">
<link rel="stylesheet" href="/assets/style/container.css">
<link rel="stylesheet" href="/assets/style/button.css">
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="/assets/js/bower_components/bootstrap/dist/js/bootstrap.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-route.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.14.3/ui-bootstrap-tpls.js"></script>
</head>
<body ng-app="ABC">
<div class="container-fluid">
<nav class="navbar navbar-default navbar-fixed-top navbar-inverse">
<ul class="nav navbar-nav">
<li><a href="#home">Home</a></li>
<li><a href="#login">Login</a></li>
<li><a href="#signup">Sign Up</a></li>
</ul>
</nav>
</div>
<div id="wrap" ng-controller="GreetingController">
<div class="container-fluid" id="main">
<ng-view></ng-view>
</div>
</div>
</body>
</html>
<script>
var app = angular.module('ABC',['ngRoute', 'ui.bootstrap']);
app.controller('GreetingController', ['$scope', function($scope) {
$scope.greeting = 'Hola!';
}]);
app.config(function($interpolateProvider, $routeProvider){
//$interpolateProvider.startSymbol('[[');
//$interpolateProvider.endSymbol(']]');
$routeProvider.when('/about', {
templateUrl: 'views/about.html'
}).when('/login',{
templateUrl: '/views/login/login.html'
}).otherwise({
redirectTo: '/about'
});
});
</script>
<!--script src="/app.js"></script-->
<script src="/views/login/login.js"></script>
{%load staticfiles%}
var app=angular.module('ABC',['ngRoute','ui.bootstrap']);
app.controller('GreetingController',['$scope',函数($scope){
$scope.greeting='Hola!';
}]);
app.config(函数($interpolateProvider,$routeProvider){
//$interpolateProvider.startSymbol(“[]”);
//$interpolateProvider.endSymbol(']]');
$routeProvider.when(“/about”{
templateUrl:'views/about.html'
}).when(“/login”{
templateUrl:“/views/login/login.html”
}).否则({
重定向到:'/about'
});
});
更改了一些内容。只需添加其他内容,如引导等。
我还更改了routeProvider中文件的url。请查看plunker
HTML:
<!DOCTYPE html>
<html ng-app="plunker">
<head>
<meta charset="utf-8" />
<title>AngularJS Plunker</title>
<script>document.write('<base href="' + document.location + '" />');</script>
<link rel="stylesheet" href="style.css" />
<script data-require="angular.js@1.4.x" src="https://code.angularjs.org/1.4.8/angular.js" data-semver="1.4.8"></script>
<script src="https://code.angularjs.org/1.4.8/angular-route.min.js"></script>
<script src="app.js"></script>
</head>
<body>
<div class="container-fluid">
<nav class="navbar navbar-default navbar-fixed-top navbar-inverse">
<ul class="nav navbar-nav">
<li><a href="#home">Home</a></li>
<li><a href="#login">Login</a></li>
<li><a href="#signup">Sign Up</a></li>
</ul>
</nav>
</div>
<div id="wrap" ng-controller="GreetingController">
<div class="container-fluid" id="main">
<ng-view></ng-view>
</div>
</div>
</body>
</html>
var app = angular.module('plunker', ['ngRoute']);
app.controller('GreetingController', function($scope) {
$scope.greeting = 'Hola!';
});
app.config(['$routeProvider', function($routeProvider) {
//$interpolateProvider.startSymbol('[[');
//$interpolateProvider.endSymbol(']]');
$routeProvider.when('/about', {
templateUrl: 'about.html'
}).when('/login',{
templateUrl: 'login.html'
}).otherwise({
redirectTo: '/about'
});
}]);
这是plnkr。
@alacex检查编辑的问题。我已经发布了现在的html文件。请创建一个plnkr并共享。这将有助于我们帮助您。@roxid当我在node server上运行相同的代码时,此代码可以工作,但在django server上不工作。所以普朗克帮不上忙。我添加了源代码链接,以便更好地了解错误。您可以复制并尝试我在上面的回答中编辑的代码吗?:)尝试没用。我只是想告诉你。当我在node server上运行相同的代码时,该代码可以工作,但在django server上不工作。是。当我在node server上运行相同的代码时,这段代码可以工作,但在django server上不工作。我做的唯一额外的事情就是添加一个代理节点服务器。