Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.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_Angular Translate - Fatal编程技术网

Angularjs 角度平移喷油器:模块错误

Angularjs 角度平移喷油器:模块错误,angularjs,angular-translate,Angularjs,Angular Translate,根据关于如何使用角度平移添加平移的精彩解释() 我犯了一个头脑不清醒的错误,我想知道为什么会发生这种情况?我做错了什么 错误: angular.js:36未捕获错误:[$injector:modulerr]$injector/modulerr?p0=app&p1=Error%3A%20…alhost%3A9085%2FScripts%2factors%2fagular.min.js%3A18%3A170) 目标: 在我的整个应用程序中部分加载翻译 我所做的: 通过bower下载(两者),并包含在

根据关于如何使用角度平移添加平移的精彩解释()

我犯了一个头脑不清醒的错误,我想知道为什么会发生这种情况?我做错了什么

错误:

angular.js:36未捕获错误:[$injector:modulerr]$injector/modulerr?p0=app&p1=Error%3A%20…alhost%3A9085%2FScripts%2factors%2fagular.min.js%3A18%3A170)

目标: 在我的整个应用程序中部分加载翻译

我所做的:

  • 通过bower下载(两者),并包含在项目中

    • 角度平移
    • 角平移装载机部分
  • 将它们添加到ReguireJS配置文件中(角度后)

  • 添加垫片:

  • 在app.js文件中包含依赖项(在末尾,在后面):
  • App.js配置
  • 控制器配置中的内容:
  • 定义( [ "棱角",, “/服务/服务”, “./控制器/控制器”, “./指令/指令”, “./过滤器/过滤器”, “pascalprecht.翻译” ], 功能(角度){ "严格使用",

    }))

  • 控制器
  • 定义(功能(要求){ "严格使用",

    }))

    在严格遵循上述教程之后,我仍然得到这个错误

    我在github和stackoverflow中搜索了albo,但没有任何东西适合我


    请帮忙

    Short:您认为RequireJS中的依赖关系管理不正确。控制器模块应要求
    angularTranslate
    ,而不是
    pascalprecht.translate

    'angularTranslate': '../Scripts/components/angular-translate-loader-partial/angular-translate-loader-partial.min'
    

    长: 首先,我建议您使用官方文件和指南,您可以在

    我还建议使用最新的AngularJS(1.5.x atm)和AngularTranslate(2.10.x atm)

    此外,我还建议您只使用库的非精简版本,因为它们会给您带来更好的体验。缩小的源文件不适用于开发人员

    我还希望使用JSFIDLE、Plnkr或其他工具进行演示,因为它们为每个人提供了运行中的概念/错误证明

    尽管如此,还不清楚您使用的是哪个版本的角度平移。如果您已经运行了
    bower install angular translate
    ,您可能已经有了最新的链接,但是您所引用的链接后面的页面是由一个较旧的页面(大约三年前)创建的。API已经改变了

    实际问题:我要说的是,您混合了AngularJS和RequireJS中的问题,这导致了此类异常

    首先:您对RequireJS的(垫片)配置有误导性/混乱性。您不应该将部分加载程序插件命名为
    angularTranslate

    'angularTranslate': '../Scripts/components/angular-translate-loader-partial/angular-translate-loader-partial.min'
    

    比较容易混淆的名称是
    pascalprecht.translate.partialLoader

    现在是RequireJS模块依赖关系管理:

  • 您已经定义了一个垫片依赖项
    angulartranlate
    ->
    pascalprecht.translate
    。无论何时请求最后一个,都会在之前加载第一个。那很好
  • 您已经定义了应用程序依赖于
    pascalprecht.translate
    angulartranlate
    (实际上是部分加载程序)。这很好,但是第一个已经过时了。它将自动可用,因为您已经定义了垫片依赖项
  • 但是,控制器模块只需要核心库
    pascalprecht.translate
  • 这意味着:RequireJS的依赖项管理解析程序不会等待部分加载程序(没有理由这样做),因此在处理AJS注入时它可能/将不可用(此处:
    translatePartialLoaderProvider



    免责声明:我是AngularJS插件AngularTranslate的共同维护者。

    简短:您在RequireJS中的依赖关系管理是不正确的。控制器模块应要求
    angularTranslate
    ,而不是
    pascalprecht.translate

    'angularTranslate': '../Scripts/components/angular-translate-loader-partial/angular-translate-loader-partial.min'
    

    长: 首先,我建议您使用官方文件和指南,您可以在

    我还建议使用最新的AngularJS(1.5.x atm)和AngularTranslate(2.10.x atm)

    此外,我还建议您只使用库的非精简版本,因为它们会给您带来更好的体验。缩小的源文件不适用于开发人员

    我还希望使用JSFIDLE、Plnkr或其他工具进行演示,因为它们为每个人提供了运行中的概念/错误证明

    尽管如此,还不清楚您使用的是哪个版本的角度平移。如果您已经运行了
    bower install angular translate
    ,您可能已经有了最新的链接,但是您所引用的链接后面的页面是由一个较旧的页面(大约三年前)创建的。API已经改变了

    实际问题:我要说的是,您混合了AngularJS和RequireJS中的问题,这导致了此类异常

    首先:您对RequireJS的(垫片)配置有误导性/混乱性。您不应该将部分加载程序插件命名为
    angularTranslate

    'angularTranslate': '../Scripts/components/angular-translate-loader-partial/angular-translate-loader-partial.min'
    

    比较容易混淆的名称是
    pascalprecht.translate.partialLoader

    现在是RequireJS模块依赖关系管理:

  • 您已经定义了一个垫片依赖项
    angulartranlate
    ->
    pascalprecht.translate
    。无论何时请求最后一个,都会在之前加载第一个。那很好
  • 您已经定义了应用程序依赖于
    pascalprecht.translate
    angulartranlate
    (实际上是部分加载程序)。这很好,但是第一个已经过时了。它将自动可用,因为您已经定义了垫片依赖项
       var app = angular.module('app', ['...',
                                         'pascalprecht.translate',
                                         'angularTranslate'                                         ]);
    
       app.config(['$routeProvider', '$locationProvider', '$httpProvider', '$translateProvider', '$translatePartialLoaderProvider',
        function ($routeProvider, $locationProvider, $httpProvider, $translateProvider, $translatePartialLoaderProvider) {
    
    var module = angular.module('common', ['common.services', 'common.controllers', 'common.directives', 'common.filters', 'pascalprecht.translate']);
    
    return module;
    
    function angularTranslate ($translateProvider, $translatePartialLoaderProvider) {
        $translateProvider.useLoader('$translatePartialLoader', {
            urlTemplate: '../Translations/locale-{part}.json'
        });
    
        $translateProvider.preferredLanguage('en');
    }
    
    return angularTranslate;
    
    'angularTranslate': '../Scripts/components/angular-translate-loader-partial/angular-translate-loader-partial.min'
    
    'angularTranslate': {
        deps: ['pascalprecht.translate']
    }
    
    define(
    [
        ...
        'pascalprecht.translate',
        'angularTranslate',
    ],
    var app = angular.module('app', ['...',
                                     'pascalprecht.translate',
                                     'angularTranslate'                                         ]);
    
    define(
    [
        ...
        'pascalprecht.translate',
        'angularTranslate',
    ],
    var app = angular.module('app', ['...',
                                     'pascalprecht.translate'                                                                          ]);