我有一个角度应用程序,我使用指向不同模板的routeprovider。列表模板和地图模板。这些模板具有与之关联的控制器。 问题是当我更改路由时,将销毁当前控制器实例,并重新启动当前模板的新控制器实例。这是一个问题,因为地图模板启动了一个非常浏览器的openlayers地图。
Routeprovider:
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider.
when('/list', {
reloadOnSearch: false,
templateUrl: '/listTpl.html'
}).
when('/map/', {
reloadOnSearch: false,
templateUrl: '/mapTpl.html'
})
.otherwise({
redirectTo: '/list'
});
});
}]);
MapTpl.html
script type="text/ng-template" id="/mapTpl.html">
<div ng-controller="mapController" class="map">
html stuff
</div>
那么有没有办法保留这些控制器,所以routeprovider只是在这些实例之间切换?
谢谢!