页面加载时的默认菜单选择

时间:2015-06-11 22:11:07

标签: javascript html angularjs

我有一个视图,其中包含一个菜单和一个指令。我想在页面加载时选择菜单中的第一项,然后填充指令的内容。

由于菜单的内容是从服务器文件加载并经常更改的,我认为我不能使用默认路由,因为每次文件更改时路由都会更改名称。

events.html

<ul>
   <li ng-repeat="event in events"><a href="#/{{event.title}}">{{event.title}}</a></li>
</ul>

以下列表项会在页面加载时动态加载,但为了简洁起见,我已将其缩短,以便在线加载事件。

controller.js

 myApp.controller('controller', ['$scope',function($scope){    
   $scope.events = {title: 'event 1', title: 'event 2'};
 }]);

我希望在页面加载时默认选择一个菜单项,例如$ scope.events [0]。

1 个答案:

答案 0 :(得分:0)

'$ scope.events'中存在重复键。我认为应该是对象数组。

这可能有效:

$scope.$watch('events', function(newVal, oldVal){
    if(newVal.length){
        $scope.selected=$scope.events[0];
    }
});