Javascript 带咖啡脚本的AngularJS
我已经在AngularJS中做了一个测试应用程序,现在我正尝试用咖啡来做一些不同的尝试。问题是,它给了我这样一个错误:Javascript 带咖啡脚本的AngularJS,javascript,angularjs,coffeescript,Javascript,Angularjs,Coffeescript,我已经在AngularJS中做了一个测试应用程序,现在我正尝试用咖啡来做一些不同的尝试。问题是,它给了我这样一个错误: Error: [$injector:modulerr] Failed to instantiate module app due to: Error: [$injector:nomod] Module 'app' is not available! You either misspelled the module name or forgot to load it. If re
Error: [$injector:modulerr] Failed to instantiate module app due to:
Error: [$injector:nomod] Module 'app' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
我不明白,为什么它看不到我的应用程序模块。这是我的密码:
index.html
<!doctype html>
<html lang="en" ng-app="app">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.css">
<link rel="stylesheet" href="css/app.css">
<script src="bower_components/jquery/jquery.js"></script>
<script src="bower_components/angular/angular.js"></script>
<script src="bower_components/angular-animate/angular-animate.js"></script>
<script src="bower_components/angular-route/angular-route.js"></script>
<script src="bower_components/angular-resource/angular-resource.js"></script>
<script src="coffee/app.coffee" type="text/coffeescript" ></script>
<script src="coffee/controllers.coffee" type="text/coffeescript"></script>
</head>
<body>
<div class="view-container">
<div ng-view></div>
</div>
</body>
</html>
咖啡:
commentController = angular.module 'commentController', []
commentController.controller 'CommentListCtrl', [ '$scope',
($scope) ->
$scope.hello = "HELLO!"
]
浏览器本身不支持Coffeescript:您必须将其编译成Javascript 您可以通过使用诸如Grunt或Gulp和Approvals插件(,)之类的任务运行程序,或者使用Browserify和Approvals转换()来“轻松地”完成。约曼用咕噜声/咕噜声 现在,关于错误:
<script src="coffee/app.coffee" type="text/coffeescript" ></script>
此代码段将有效加载脚本,但不会对其进行解释。您可以获取其内容并将其作为字符串进行操作(这是一些模板库所使用的),但仅此而已。浏览器不会告诉你“嘿,我看不懂这个,这是咖啡脚本”
加载页面后,Angular将解析您的DOM,读取ng app=“app”
,并尝试查看他是否知道模块app
。
不幸的是,您的脚本没有被解释,因此
app
模块没有声明:这就是您得到的错误 我用另一种方式做了。安装了yeoman(因为之前我不知道这件事),并授权他为我做所有事情:)但仍然感谢您的回答。您可以将其添加到您的答案中,因此我将其作为完整答案接受:)
<script src="coffee/app.coffee" type="text/coffeescript" ></script>