是否可以在加载中初始化范围和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来触发路线。
答案 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';