AngularJS无法识别控制器
AngularJS not recognizing controller
所以我已经知道,当我看到答案时,我会感到非常愚蠢,但我正在egghead.io上学习AngularJS教程。当我这样做时:
<!DOCTYPE html>
<html>
<head>
<title>AngularJS Tutorials</title>
<link rel="stylesheet" href="/foundation/stylesheets/foundation.min.css">
<script src="js/main.js"></script>
<script src="lib/angular/angular.js"></script>
</body>
</head>
<body>
<div ng-app="myApp">
<div ng-controller="FirstCtrl">
<input type="text" ng-model="data.message">
<h1>{{ data.message }}</h1>
</div>
<div ng-controller="SecondCtrl">
<input type="text" ng-model="data.message">
<h1>{{ data.message }}</h1>
</div>
</div>
</html>
使用我的JavaScript文件(命名为main.js):
var myApp = angular.module('myApp', []);
myApp.factory('Data', function() {
return { message: "I'm data from a service"}
})
function FirstCtrl($scope, Data) {
$scope.data = Data;
}
function SecondCtrl($scope, Data) {
$scope.data = Data;
}
我的{{ data.message }}
未被识别为AngularJS绑定(即在页面中显示为
CCD_ 2而不是CCD_ 3)。但是,如果我把所有的JS代码直接放在HTML中的<script></script>
标记中,它就可以正常工作。我是不是错过了推荐信?似乎在任何地方都找不到这个,可能是因为它真的很基本。
我要跳枪并建议您切换这些
<script src="js/main.js"></script>
<script src="lib/angular/angular.js"></script>
至
<script src="lib/angular/angular.js"></script>
<script src="js/main.js"></script>
如果这是有效的,那是因为在您尝试使用angular之前,它没有被事件加载。
提示
现在,当我刚开始使用javascript时,这类事情经常发生在我身上。对你来说,最好的办法是学习如何使用
console
,它会在控制台中告诉你一些类似cannot read property 'module' of undefined
的东西,这意味着angular
是undefined
,因此没有加载。
在控制器之前加载Angular,而不是在之后
行之间的切换:
<script src="js/main.js"></script>
<script src="lib/angular/angular.js"></script>
您需要在angular加载后运行main.js
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 如何识别我的网站中的慢速设备
- 从控制器返回后Ajax启动事件激发
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- 如何在单击复选框后调用控制器方法
- Google/html5语音识别JavaScript SDK Chrome网络工具包SpeechRecognition
- 在控制器和数据对象之间同步数据
- Angular JS/Rube-on-Rails-控制器未识别错误
- 角度.js - 识别通过路由或 ng 控制器调用的控制器
- 离子单选按钮-控制器范围无法识别更改
- AngularJs的单元测试失败是因为Karma没有'无法识别$scope$控制器中的侦听器
- Angular js 无法识别控制器
- 无法识别余烬组件 - 绑定属性渗入控制器
- AngularJS无法识别控制器
- Angular无法识别我的控制器
- AngularJS UI路由器赢得't识别模块上已定义的控制器
- 控制器不能识别从routeProvider传入的routeParams变量
- asp.net mvc控制器无法识别DateTime url参数
- JS不会识别angular控制器对象中的变量