我正在使用 ui-router,我的布局分为 2 个 ui-views、侧边栏和主要内容
侧边栏提供了更改主要内容模型(更改值、设置过滤器)的选项,这是一个问题,因为据我了解,它们永远无法共享相同的控制器(实例)
在这一点上,我正在考虑两种解决方案,1.使用一个视图将侧边栏移动到主视图中,这样它们将驻留在单个控制器实例中,这有点难看,但仍然是一个解决方案 2.在控制器之间进行通信一个消息,调用任何需要在那个不连贯的事情上
我不喜欢这两种解决方案,我很乐意收到您的设计建议
当前路由定义示例(请注意,相同的布局对于我的应用程序很常见,并且重复使用:
$stateProvider.state('home', {
url: "/home",
views: {
main: {
templateUrl:"homeTemplate.html",
controller: "HomeController"
},
sidebar: {templateUrl: "homeSidebarTemplate.html"}
}
})