角度js重新加载视图

时间:2013-08-28 03:49:52

标签: angularjs angular-ui-router

我在我的项目中使用Angular JS和Angular IU-Router并使用了很多ui-views。我有一种情况需要更改网站的语言,因此我需要将我的ui-view模型与相关语言交换到另一个模型。我已经有一个检测相关模型的服务并将其传递到ui-view的控制器中。所以,如果我可以重新加载ui-view,那么理论上我的问题就会解决。

我记得读过一些关于自动重新加载ui-view(或可能是ng-view)并重新实例化其控制器的内容,但经过大量搜索后,我再也无法找到该信息。

有谁知道我在找什么?

1 个答案:

答案 0 :(得分:0)

1看看angular-translate https://github.com/PascalPrecht/angular-translate

2在您的情况下,在外部div中添加一些if-else控件(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>