无法实例化模块MyApp

时间:2014-03-07 22:08:18

标签: angularjs requirejs

我使用RequireJS动态加载Angularjs,虽然应用程序最初加载,但它会在控制台中生成此error。我已经尝试改变我的定义方式以及我加载应用程序和角度的顺序,但我仍然得到同样的错误。

我在这里发现了类似的问题,但没有解决我的问题。任何帮助将不胜感激。这是我的需要js文件以及我的角度应用程序定义:

(main.js)

require.config({
    paths: {
        angular: '../js/angular/angular.min',
        jquery: '../js/lib/jquery-1.11.0.min',
        app: '../js/app',
        nvd3: '../js/nvd3/nv.d3.min',
        d3: '../js/d3/d3.min',      
    },
    shim: {
        angular: {
            deps: ['jquery'],
            exports: 'angular'
        },        
        nvd3: {
            exports: 'nv',
            deps: ['d3']
        },
        d3: { exports: 'd3'},     
    }
});

(loadAngular.js)

require([
      'angular',
      'app',
      'services/services',
      'controllers/controllers',
      'directives/directives',
      'd3',
      'nvd3',

    ], function(angular) {
//        angular.bootstrap(document, ['MyApp']);
    });

(app.js)

require(["angular"], function (angular) {
    'use strict';

    // create the angular app
    var app = angular.module('MyApp', ['MyApp.directives'
    ]);

    app.factory('socket', function () {
        var socket = io.connect('http://localhost:7000');
        return socket;

    });

    // setup dependency injection
    angular.module('d3', []);
    angular.module('MyApp.directives', ['d3']);

    angular.bootstrap(document, ['MyApp']);

});

更新: 我想我已经发现了错误被抛出的地方。我在base.html文件的脚本标记中有main.js文件,然后使用jquery .load()调用将实际内容视图(带有角度的东西)加载到div中。每个片段html文件都包含loadAngular.js。

从动态加载的视图(ng-app ='MyApp')中抛出错误:

<div id='trans' ng-app='MyApp' ng-controller='TransController'>

这让我觉得我没有使用RequireJS在页面上正确加载角度?任何人都可以看到文件中的任何错误吗?

0 个答案:

没有答案