0

プロジェクトでAngular JSとAngular IU-Routerを使用しており、多くのUIビューを使用しています。サイトの言語を変更する必要がある状況があるため、UI ビューのモデルを関連する言語の別のモデルに交換する必要があります。関連するモデルを検出し、それを ui-view のコントローラーに渡すサービスが既にあります。したがって、UIビューをリロードできれば、理論的には問題は解決します。

ui-view (またはおそらく ng-view) を自動的にリロードし、そのコントローラーを再インスタンス化することについて何かを読んだことを思い出しますが、多くの検索を行った後、その情報を再び見つけることができませんでした。

私が探しているものを知っている人はいますか?

4

1 に答える 1

0

1 angular-translate https://github.com/PascalPrecht/angular-translateをご覧ください

if-else2あなたの場合、外側のdivにいくつかのコントロール(ng-if, ng-switchなど)を追加し、内側のdivで同じもの subviewを使用します。次にsettings.currentLang、言語の変更によってサブビューのリロードが発生する可能性がある場合を変更します (テストされていません)。

<div ng-controller="containerCtrl">
    <div ng-if="settings.currentLang=='en'">
        <div ui-view='subview'></div>
    </div>
    <div ng-if="settings.currentLang=='ja'">
        <div ui-view='subview'></div>
    </div>
</div>
于 2013-08-28T04:33:59.753 に答える