只需在angular-ui中重新加载内部视图,保持外部视图不变

时间:2015-03-19 00:28:36

标签: javascript html angularjs angular-ui-router angular-ui

我的模板有点像这样:

home.html的

<div ui-view></div>   <!-- homeframe.html plugs in here -->

homeframe.html

<!-- quickcontact.html and settings.html plugs in here -->
<div ui-view="widget"></div>

<a class="link" ng-click="changeUrl('/')">quickcontact</a>
<a class="link" ng-click="changeUrl('/settings')">settings</a>

quickcontact.html

<div>
.
.
.
</div>

settings.html

<div>
.
.
.
</div>

homeframe.html加载ui-view中出现的home.html。同样,quickcontact.htmlsettings.htmlwidget ui-view内加载。我想让homeframe.html不再重新加载,只是不断更改widget ui-view的内容。如何使用angular-ui状态实现这一目标?

1 个答案:

答案 0 :(得分:1)

尝试直接导航到您的quickcontact或设置状态,而不是更改网址以触发它们。您可以使用ui-router的ui-sref指令来触发状态转换。假设状态名为settingsquickcontact

<a class="link" ui-sref="quickcontact">quickcontact</a>
<a class="link" ui-sref="settings">settings</a>