AngularJS - 初始化和加载

时间:2013-01-13 21:28:24

标签: javascript load angularjs init

是否可以在加载中初始化范围和ng-view?

问题:
我有一个AngularJS应用程序和一个经销商列表。您可以在地图上选择经销商,并在路线上打开overlay-div(用ng-show =“show”调用它)中的详细信息

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

客户现在想要当客户打开页面时,会打开一个包含详细信息的初始详细信息覆盖。

解决方案(可能):
是否有可能(可能是ng-init)将所选经销商的硬编码:id发送到控制器并触发详细信息覆盖,以便在加载时打开?或者也许用ID来触发路线。

1 个答案:

答案 0 :(得分: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';