Angular-translate未知提供者 [英] Angular-translate Unknown provider

查看:122
本文介绍了Angular-translate未知提供者的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在我的应用程序中使用了角度转换,这是我的app.js

Im using angular translate in my app, this is my app.js

var formApp = angular.module('formApp', [
  'ngRoute',
  'ui.bootstrap',
  'pascalprecht.translate'
]).config(function($translateProvider) {
    $translateProvider.translations('en', {
       HEADLINE: 'Hello there, This is my awesome app!',
       INTRO_TEXT: 'And it has i18n support!'
    });
});

我在互联网上喜欢的休闲教程.

Im fallowing tutorial I fond on the internet.

这是我将库加载到html文件中的方式

This is how I loaded libraries in my html file

<script src="../bower_components/angular/angular.js"></script>
<script src="../bower_components/angular-translate/angular-translate.js"></script>

这就是我打印值的方式

<h2>{{ 'HEADLINE' | translate }}</h2>
<p>{{ 'INTRO_TEXT' | translate }}</p>

但是当我打开我的应用程序时,我会在控制台中获取此味精:

But when i open my app im getting this msg in console :

Error: [$injector:unpr] Unknown provider: translateFilterProvider <- translateFilter

有人知道如何解决此问题吗?我是绝对的初学者,如果错误是愚蠢的,抱歉:)

Does anyone knows how to fix this? Im absolute beginner in angular, sorry if error is stupid :)

推荐答案

在您的控制器中,您需要添加$ translate作为依赖项.

In your controller, you need to add $translate as a dependency.

formApp.controller('myCtrl', function ($scope, $translate) {
 //code
});

例如,在html中,必须在这些元素之前的某个位置具有ng-controller,这就是需要将依赖项作为参数注入的控制器.

So for example in the html, you must have a ng-controller at some point before those elements, thats the controller that needs the dependency injected as a parameter.

<div ng-controller="myCtrl">
  ...
  <h2 translate>HEADLINE</h2>
  <p translate>INTRO_TEXT</p>
  ...
</div>

还需要在config块中设置首选语言:

Also in the config block you need to set the prefered language:

$translateProvider.preferredLanguage('en');

这篇关于Angular-translate未知提供者的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆