2015-08-19 32 views
0

我正在嘗試使用角度翻譯來進行本地化,但我遇到的問題只能在主頁上使用。點擊鏈接後,下一頁完全不會翻譯。角度翻譯不能在模板上工作

奇怪的是,navbar翻譯(位於index.html)仍然正確翻譯,但ngview中的內容不翻譯。其他頁面的控制器當前爲空。

enter image description here

-App.js 
var myApp = angular.module('myApp', ['ngRoute', 'pascalprecht.translate']); 

myApp.config(
function ($routeProvider) { 
    $routeProvider. 
    when('/signup', { 
     templateUrl: 'partials/signup.html', 
     controller: 'SignUpControllers' 
    }). 
    otherwise({ 
     templateUrl: 'partials/home.html' 
    }); 
}) 
.config(function ($translateProvider) { 
$translateProvider.useStaticFilesLoader({ 
    prefix: '/languages/', 
    suffix: '.json' 
}); 
$translateProvider.preferredLanguage('en'); 
}); 

我注意到另一件事是,在home.html的默認頁面內容被正確地翻譯,但任何其他頁面沒有得到正確地翻譯。

Plunker Example - 示例正常

+0

你能設置一個plunkr來演示這個問題嗎? –

+0

@DanPantry我添加了一個顯示這個問題的解決方案。 –

回答

1

您在有一個錯誤的設置這是防止未正從正確加載翻譯的路線。從您的plunkr:

Error: [ng:areq] Argument 'SignUpControllers' is not a function, got undefined 

這表明你沒有在你的模塊配置設置SignUpControllers正常。事實上,你並沒有真正將你的控制器定義在你的運動員身上。

+0

對不起,在發佈鏈接之前,我並沒有安靜地完成重擊。我沒想到會這麼快速回復!控制器已定義,但翻譯仍未出現。但是,如果沒有聲明控制器,例如關於頁面,則可以讓翻譯工作。 –

+0

用控制器更新你的活塞.. –

+0

我明白了。我沒有正確地聲明控制器,而是創建了一個新模塊。用正確的代碼更新了plunkr,所以現在似乎都在工作。 –