Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用带有角度抛出异常的RequireJS_Javascript_Angularjs_Module_Requirejs_Frontend - Fatal编程技术网

Javascript 使用带有角度抛出异常的RequireJS

Javascript 使用带有角度抛出异常的RequireJS,javascript,angularjs,module,requirejs,frontend,Javascript,Angularjs,Module,Requirejs,Frontend,我正在使用RequireJS加载AngularJS控制器以服务于我的前端html。 但是,即使加载了所有必需的LIB,它也会抛出异常: [$injector:modulerr] Failed to instantiate module metaapp due to: Error: [$injector:nomod] Module 'metaapp' is not available! 有人能给我指个路吗 以下是我的目录结构: metacontroller.js: /*global defin

我正在使用RequireJS加载AngularJS控制器以服务于我的前端html。 但是,即使加载了所有必需的LIB,它也会抛出异常:

[$injector:modulerr] Failed to instantiate module metaapp due to: Error: [$injector:nomod] Module 'metaapp' is not available!
有人能给我指个路吗

以下是我的目录结构:

metacontroller.js:

/*global define*/
'use strict';

define(['angular'], function(angular){
  return ['$scope', function($scope){
    $scope.test = "haha";
  }
  ];
});
Index.html

<!doctype html>
<html lang="en" data-framework="angularjs">
  <head>

  </head>
  <body ng-app="metaapp" ng-controller="MetaController">
    {{test}}
    <script data-main="js/main" src="js/lib/require.js"></script>
  </body> 
</html>
main.js

/*global require*/
'use strict';


require.config({
    paths: {
        angular: 'lib/angular'
    },
    shim: {
        angular: {
            exports: 'angular'
        }
    },
    deps: ['app']
});

-------------第一次更新----------------- 更新控制器-将作用域替换为$scope

-------------第二次更新---------------- 在
app.js
中,删除依赖项注入。但是仍然不起作用

错误:


angular.js:63未捕获错误:[$injector:modulerr]未能实例化模块metaapp,原因是:错误:[$injector:nomod]模块“metaapp”不可用!您要么拼错了模块名,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数

----------------------更新3-------------------- 好吧,我想起来了。。。 我错过了这行代码:
angular.bootstrap(文档,['metaapp'])现在它工作了,因为我可以看到html页面上解释的
哈哈

但是我仍然可以看到错误,有什么想法吗?

不确定这两个嵌套模块的行为。 它们可以合并为一个吗

/*global require*/
'use strict';

require([
  'angular',
  'app/UserMeta/metacontroller',
  'app/UserMeta/metaservice'

], function (angular, metaCtrl, metaSrv) {
  var app = angular.module('metaapp', [metaCtrl, metaSrv]);
  app.controller('MetaController', metaCtrl);
}); 

var-app=angular.module('metaapp',[]);应用控制器(“元控制器”,元控制器)--只是尝试了一下,不起作用-(
angular.js:63未捕获错误:[$injector:modulerr]未能实例化模块metaapp,原因是:错误:[$injector:nomod]模块“metaapp”不可用!您可能拼错了模块名称或忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数
/*global require*/
'use strict';

require([
  'angular',
  'app/UserMeta/metacontroller',
  'app/UserMeta/metaservice'

], function (angular, metaCtrl, metaSrv) {
  var app = angular.module('metaapp', [metaCtrl, metaSrv]);
  app.controller('MetaController', metaCtrl);
});