Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.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
AngularJS模块化——我的模块可以';找不到,我做错了什么?_Angularjs - Fatal编程技术网

AngularJS模块化——我的模块可以';找不到,我做错了什么?

AngularJS模块化——我的模块可以';找不到,我做错了什么?,angularjs,Angularjs,我以前的结构是app/controllers、app/services、app/directives等,所有控制器都在controllers目录中,以此类推 现在我试图利用模块化,但我遇到了麻烦。我本应该一个接一个地做,但现在我没有测试任何:D就把它们都做了 这是我的错误,对每个模块重复相同的操作: angular.js:68未捕获错误:[$injector:nomod]模块“app.login”不可用!您要么拼错了模块名,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数 有人能解释

我以前的结构是app/controllers、app/services、app/directives等,所有控制器都在controllers目录中,以此类推

现在我试图利用模块化,但我遇到了麻烦。我本应该一个接一个地做,但现在我没有测试任何:D就把它们都做了

这是我的错误,对每个模块重复相同的操作:

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

有人能解释一下我遗漏了什么/误解了什么/做错了什么吗

我目前的结构是:

app 
   login
      login.controller.js
      login.js
      login.html
   signup
      signup.controller.js
      signup.js
      signup.html
   common
      services
         auth.service.js
      filters
      directives
   app.js
。。。等等

在app.js中,我有:

(function () {

    'use strict';

    angular
        .module('app', [
            // Third Party Plugins
            'ui.router', 'permission', 'satellizer', 'angular-loading-bar',

            // Auth Modules
            'app.login', 'app.signup', 'app.logout', 'app.passwordForgot', 'app.passwordReset'
        ])

        // rest of code....

})();
在我所有的模块中,我都有类似的结构。下面是login.js:

(function() {

    'use strict';

    angular
        .module('app.login')
        .config(['$stateProvider', Config]);

    function Config($stateProvider) {
        $stateProvider
            .state('login', {
                url: '/login',
                data: {
                    permissions: {
                        except: ['isLoggedIn'],
                        redirectTo: 'dashboard.home'
                    }
                },
                templateUrl: 'app/login/login.html',
                controller: 'LoginController as login'
            });
    }

})();
在我的index.blade.php(使用Laravel作为后端)中,我有:


您忘记了模块方法调用中的[](在您的情况下,您试图获取模块,而不是创建模块)

angular
.module('app.login',[])

.config(['$stateProvider',config])像这样定义角度模块
angular.module('app.login',[])
。你基本上得到的是am injector错误,因此要么定义错误,要么你的rootmodule找不到模块对象。你是对的,我读了文档,不得不放一个空数组来定义它。如果上述方法不起作用,那么试着对js文件的路径进行编码。这是喷油器将依赖的另一个位置-用于添加模块文件。确保正确的顺序-最好是在出现错误时“[]”起了作用。直接从文档:--谢谢。如果这个答案解决了你的问题,你能把它标记为已回答吗?
<script type="text/javascript" src="{{ asset('bower_components/angular/angular.js') }}"></script>
<script type="text/javascript" src="{{ asset('bower_components/angular-ui-router/release/angular-ui-router.js') }}"></script>
<script type="text/javascript" src="{{ asset('bower_components/satellizer/satellizer.js') }}"></script>
<script type="text/javascript" src="{{ asset('bower_components/angular-permission/dist/angular-permission.js') }}"></script>
<script type="text/javascript" src="{{ asset('bower_components/angular-jwt/dist/angular-jwt.min.js') }}"></script>
<script type="text/javascript" src="{{ asset('bower_components/angular-loading-bar/build/loading-bar.min.js') }}"></script>

<script type="text/javascript" src="{{ asset('app/app.js') }}"></script>

<!-- Common -->
<script type="text/javascript" src="{{ asset('app/common/services/authService.js') }}"></script>

<!-- Login -->
<script type="text/javascript" src="{{ asset('app/login/login.js') }}"></script>
<script type="text/javascript" src="{{ asset('app/login/login.controller.js') }}"></script>

<!-- Signup -->
<script type="text/javascript" src="{{ asset('app/signup/signup.js') }}"></script>
<script type="text/javascript" src="{{ asset('app/signup/signup.controller.js') }}"></script>

<!-- Logout -->
<script type="text/javascript" src="{{ asset('app/logout/logout.js') }}"></script>
<script type="text/javascript" src="{{ asset('app/logout/logout.controller.js') }}"></script>

<!-- Password Forgot -->
<script type="text/javascript" src="{{ asset('app/passwordForgot/passwordForgot.js') }}"></script>
<script type="text/javascript" src="{{ asset('app/passwordForgot/passwordForgot.controller.js') }}"></script>

<!-- Password Reset -->
<script type="text/javascript" src="{{ asset('app/passwordReset/passwordReset.js') }}"></script>
<script type="text/javascript" src="{{ asset('app/passwordReset/passwordReset.controller.js') }}"></script>