2013-01-13 105 views
0

是否可以在加载时初始化作用域和ng-view?AngularJS - 初始化和加载

问题:
我有一个AngularJS应用与经销商名单。你可以选择地图和开放的细节上经销商的叠加DIV路线

when(
    '/dealer/:id', { 
    templateUrl: 'files/tpl/dealer-details.html?19', 
    controller: 'DealerDetailsCtrl', 
    activetab: 'details'} 
). 

上(含伍秀=“秀”称它)现在客户希望的是,当客户打开页面,一个初始的详细信息覆盖图是打开的细节。

解决方案(可能):
是否有可能,也许NG-INIT,发硬编码:所选择的经销商的ID控制器和触发的细节叠加,以便其通向负载?或者也许用ID来触发路线。

回答

0

如果我正确理解你,你需要一个默认值:id如果没有提供?

最好的办法是有两个when条款在$routeProvider

$routeProvider.when(
    '/dealer', { 
    templateUrl: 'files/tpl/dealer-details.html?19', 
    controller: 'DealerDetailsCtrl', 
    activetab: 'details'} 
); 
$routeProvider.when(
'/dealer/:id', { 
templateUrl: 'files/tpl/dealer-details.html?19', 
controller: 'DealerDetailsCtrl', 
activetab: 'details'} 
); 

在你的控制器,你就可以分配如果没有定义的默认值:

$scope.dealer = $routeParams.id || 'defaultDealerId'; 
+0

这是否包括覆盖打开太? – Marek123

+0

通常,你的ng-show应该照顾它,但很难知道没有更多的代码片段 – asgoth