Angularjs 与requirejs的角度测量中没有模块错误
我对angularjs是新手 我正在尝试将angularjs与requirejs集成。我是怎么得到这个错误的Angularjs 与requirejs的角度测量中没有模块错误,angularjs,Angularjs,我对angularjs是新手 我正在尝试将angularjs与requirejs集成。我是怎么得到这个错误的 未捕获错误:无模块:应用程序 这是我的设置 main.咖啡 require.config baseUrl : "/Scripts/" paths : jquery : 'libs/jquery/jquery-2.0.3' angular : 'libs/angular/angular' 'angular-resource' : 'libs/angular/angu
未捕获错误:无模块:应用程序
这是我的设置
main.咖啡
require.config
baseUrl : "/Scripts/"
paths :
jquery : 'libs/jquery/jquery-2.0.3'
angular : 'libs/angular/angular'
'angular-resource' : 'libs/angular/angular-resource'
bootstrap : 'libs/bootstrap/bootstrap'
shim :
angular :
exports :'angular'
'angular-resource':
deps :['angular']
jquery :
exports: ['jquery']
bootstrap :
deps :['jquery']
app:
deps :['app-boot']
require ['app-angular/modules/app','app-angular/modules/app-boot'], ($,angular)->
require ['jquery','angular','bootstrap'], ($,angular)->
$(document).ready ->
angular.bootstrap document,['app']
define "app",['angular','angular-resource'], (angular)->
angular.module 'app',['ngResource']
require ["app"] , (app) ->
app.controller "StudentController" , ($scope) ->
$scope.msg = "Hello Joy !! How are you !! You are in Angularjs"
应用程序启动。咖啡
require.config
baseUrl : "/Scripts/"
paths :
jquery : 'libs/jquery/jquery-2.0.3'
angular : 'libs/angular/angular'
'angular-resource' : 'libs/angular/angular-resource'
bootstrap : 'libs/bootstrap/bootstrap'
shim :
angular :
exports :'angular'
'angular-resource':
deps :['angular']
jquery :
exports: ['jquery']
bootstrap :
deps :['jquery']
app:
deps :['app-boot']
require ['app-angular/modules/app','app-angular/modules/app-boot'], ($,angular)->
require ['jquery','angular','bootstrap'], ($,angular)->
$(document).ready ->
angular.bootstrap document,['app']
define "app",['angular','angular-resource'], (angular)->
angular.module 'app',['ngResource']
require ["app"] , (app) ->
app.controller "StudentController" , ($scope) ->
$scope.msg = "Hello Joy !! How are you !! You are in Angularjs"
应用程序咖啡
require.config
baseUrl : "/Scripts/"
paths :
jquery : 'libs/jquery/jquery-2.0.3'
angular : 'libs/angular/angular'
'angular-resource' : 'libs/angular/angular-resource'
bootstrap : 'libs/bootstrap/bootstrap'
shim :
angular :
exports :'angular'
'angular-resource':
deps :['angular']
jquery :
exports: ['jquery']
bootstrap :
deps :['jquery']
app:
deps :['app-boot']
require ['app-angular/modules/app','app-angular/modules/app-boot'], ($,angular)->
require ['jquery','angular','bootstrap'], ($,angular)->
$(document).ready ->
angular.bootstrap document,['app']
define "app",['angular','angular-resource'], (angular)->
angular.module 'app',['ngResource']
require ["app"] , (app) ->
app.controller "StudentController" , ($scope) ->
$scope.msg = "Hello Joy !! How are you !! You are in Angularjs"
学生控制员。咖啡
require.config
baseUrl : "/Scripts/"
paths :
jquery : 'libs/jquery/jquery-2.0.3'
angular : 'libs/angular/angular'
'angular-resource' : 'libs/angular/angular-resource'
bootstrap : 'libs/bootstrap/bootstrap'
shim :
angular :
exports :'angular'
'angular-resource':
deps :['angular']
jquery :
exports: ['jquery']
bootstrap :
deps :['jquery']
app:
deps :['app-boot']
require ['app-angular/modules/app','app-angular/modules/app-boot'], ($,angular)->
require ['jquery','angular','bootstrap'], ($,angular)->
$(document).ready ->
angular.bootstrap document,['app']
define "app",['angular','angular-resource'], (angular)->
angular.module 'app',['ngResource']
require ["app"] , (app) ->
app.controller "StudentController" , ($scope) ->
$scope.msg = "Hello Joy !! How are you !! You are in Angularjs"
还有我的Index.cshtml
<div class="page-content">
<div ng-controller="StudentController">
<p ng-bind="{{msg}}">
</p>
</div>
但是,它给出了错误未捕获错误:无模块:app
我还从html中删除了
ng应用程序
,并在domready上手动引导angular。那么我错在哪里呢 我认为您需要反转对这段代码的依赖:
app:
deps :['app-boot']
是这样的:
'app-boot': {
deps: ['app']
}
您的
app boot.coffee
文件取决于app.coffee
文件中定义的模块app
,我认为您需要反转对这一位代码的依赖:
app:
deps :['app-boot']
是这样的:
'app-boot': {
deps: ['app']
}
您的
app boot.coffee
文件取决于在app.coffee
文件中定义的模块app
。coffee文件看起来像是在遵循这一点,这是一个双重优点
我能够让它工作,但不断收到相同的错误消息,因为在我的角度控制器中,“应用程序”没有定义。正如指南所述,“app.controller”似乎没有设置在那里,仅通过“require”语句加载就足够了
require(['jquery'、'下划线'、'主干'、'用户'、'角度'、'指令'、'应用程序'])
这和你的只有一点不同
/* shim */
require.config({
shim: {
underscore: {
exports: '_'
},
backbone: {
deps: ["underscore", "jquery"],
exports: "Backbone"
},
"angular":{
exports:"angular"
},
"directives":{/* this is my custom Angular directive */
deps:["angular"]
}
}
});
/* RequireJS module */
define("app", ["angular", "directives"], function(angular)
{
var app = angular.module("app", ["zipppyModule"]);
angular.element(document).ready(function()
{ angular.bootstrap(document,['zippyModule']); });
});
/* 'app' loads the module */
require(['jquery', 'underscore', 'backbone', 'users', 'angular', 'directives', 'app']
看起来你在关注这个,这是双倍的 我能够让它工作,但不断收到相同的错误消息,因为在我的角度控制器中,没有定义“app”。正如指南所述,“app.controller”似乎没有设置在那里,仅通过“require”语句加载就足够了
require(['jquery'、'下划线'、'主干'、'用户'、'角度'、'指令'、'应用程序'])
这和你的只有一点不同
/* shim */
require.config({
shim: {
underscore: {
exports: '_'
},
backbone: {
deps: ["underscore", "jquery"],
exports: "Backbone"
},
"angular":{
exports:"angular"
},
"directives":{/* this is my custom Angular directive */
deps:["angular"]
}
}
});
/* RequireJS module */
define("app", ["angular", "directives"], function(angular)
{
var app = angular.module("app", ["zipppyModule"]);
angular.element(document).ready(function()
{ angular.bootstrap(document,['zippyModule']); });
});
/* 'app' loads the module */
require(['jquery', 'underscore', 'backbone', 'users', 'angular', 'directives', 'app']
那么你的意思是说首先必须启动模块,然后应用程序需要引导???是的,我相信是这样。在你的代码中,首先需要这样做
var-app=angular.module(“app”,[],function($routeProvider,$locationProvider){//your code here};
然后你可以这样做angular.bootstrap(document[“app”];
-我知道我是用纯JavaScript编写的,而不是CoffeScript,但我相信你会理解:)那么你的意思是说,首先必须启动模块,然后启动应用程序???是的,我相信是这样。在你的代码中,首先需要实现var app=angular.module(“app”),函数($routeProvider,$locationProvider){//your code here});
然后你就可以做这个angular.bootstrap(文档,[“app”]);
-我知道我是用纯JavaScript编写的,而不是用CoffeScript编写的,但我相信你会理解:)是的,您可以通过require语句和模块名称加载所需脚本的上下文。但是我采用了不同的方法。我制作了deps:['app/app']
在main.js中,它实际上包含所有必需的模块。有多种方法可以实现这一点。由于requirejs模块非常灵活,您可以以各种方式使用它。确实如此,您只需通过require语句和模块名称来加载所需脚本的上下文。但是我做了一个不同的应用程序roach.我在main.js中创建了deps:['app/app']
,它实际上包含了所有必需的模块。可以有多种方法来实现这一点。因为requirejs模块非常灵活,您可以以各种方式使用它