如何在 Angular 中的 url 更改时仅重新加载一个控制器
How to reload only one controller on url change in Angular?
我正在为我的Web应用程序使用ui-router,并且我定义了3个不同的视图:标题,内容和菜单。
当我从菜单中选择一个链接时,我只想重新加载内容视图,页面的其余部分应该保持原样。这是我的路由配置:
app.config(['$stateProvider', '$urlRouterProvider', '$locationProvider', '$httpProvider',
function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider) {
$httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
$locationProvider.html5Mode(true);
$stateProvider.state('', {
url: '/name=:name',
views: {
header: {
templateUrl: '/new/app/components/header/headerView.html',
controller: 'HeaderController'
},
content: {
// only this one should reload itself on url change.
templateUrl: '/new/app/components/content/contentView.html',
controller: 'ContentController'
},
menu: {
templateUrl: '/new/app/components/menu/menuView.html',
controller: 'MenuController'
}
}
});
}
]);
在 html 中,我像这样定义此视图:
<div ui-view="header"></div>
<div ui-view="content"></div>
<div ui-view="menu"></div>
如何定义我的配置文件以仅重新加载"内容"视图?
我会为您的header
和menu
创建指令,或者使用ng-include
而不使用ui-view
或将它们放入您的状态配置中
<div site-header></div>
<div ui-view="content"></div>
<div site-menu></div>
相关文章:
- 在新的浏览器选项卡上加载新的aspx页面后调用JavaScript函数
- 更改css链接并等待加载新的css
- 如何在Ajax加载新内容时停止JavaScript执行
- 当在ng视图中加载新路由时,Tabbing(tabindex)针对错误的元素
- 如何使用输入数据加载新的extjs图表
- JQuery Masonry.Ajax图标和“;加载新项目”;绳子放错地方了
- 通过javascript在同一个打开的选项卡中重新加载新的网页内容
- 当用户到达页面右侧时加载新内容
- 数据表 AJAX 筛选器重新加载数据
- 超链接单击以加载新页面并执行JavaScript
- 单击时加载新的 SVG
- 在RadWindow中加载新页面,然后从加载的窗体中关闭窗口
- ajax在页面刷新之前不会加载新的sql结果
- 谷歌地图API-在从ajax页面加载新数据之前清除标记、多段线
- 使用Ajax加载页面,并在必要时加载新脚本
- 加载新页面时的过渡效果,AJAX
- Ajax没有正确加载新页面
- 正在加载新的Javascript,但正在调用旧的Javascript.MVC
- 咕噜咕噜的手表:实时加载重新加载落后 1 步....
- 我怎么能有一个花哨的盒子一样的弹出体加载,但与cookie不连续加载重新加载