Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 初始加载期间ng类出现问题_Javascript_Angularjs_Angularjs Ng Repeat - Fatal编程技术网

Javascript 初始加载期间ng类出现问题

Javascript 初始加载期间ng类出现问题,javascript,angularjs,angularjs-ng-repeat,Javascript,Angularjs,Angularjs Ng Repeat,我手头有一个相当简单的任务。创建一个列表,突出显示活动项 使用ng类并在范围中设置当前选定的项只需单击即可工作,但最初不起作用 我在这里俯瞰什么?这是数据 $scope.adminTabs = [{"name": "Agent"}, {"name": "Agent Queue"}, {"name": "Skills"} ] 下面是控制器中的单击以及初始值的设置: $scope.adminTabs = adminI

我手头有一个相当简单的任务。创建一个列表,突出显示活动项

使用ng类并在范围中设置当前选定的项只需单击即可工作,但最初不起作用

我在这里俯瞰什么?这是数据

$scope.adminTabs =  [{"name": "Agent"}, 
             {"name": "Agent Queue"},
             {"name": "Skills"}
             ]
下面是控制器中的单击以及初始值的设置:

$scope.adminTabs = adminInfo.adminTabs;
  //Default
    $scope.activeAdminTab = $scope.adminTabs[0].name;
    $scope.loadAdminTab = function(){
            $scope.activeAdminTab = this.tab.name;

    }
最后,ng类指令本身也在起作用

<ul>
                    <li data-ng-click="loadAdminTab()"
                        data-ng-repeat="tab in adminTabs"
                        data-ng-model = "admin.selectedTab" 
                        data-ng-class="tab.name == activeAdminTab ? 'selected' : '' ">{{tab.name}}</li>
                </ul>
  • {{tab.name}

问题是,第一项从未设置为使用“selected”类,尽管驱动它的范围变量确实设置正确。

这不是答案,所以请不要接受它或投票支持它。只有在这里,因为我创建了一个代码段,显示代码正在工作:

angular.module('MyModule',[])
.controller('MyController',函数($scope){
$scope.admintab=[{“name”:“Agent”},
{“名称”:“代理队列”},
{“姓名”:“技能”}
];
$scope.activeAdminTab=$scope.admintab[0]。名称;
$scope.loadAdminTab=函数(){
$scope.activeAdminTab=this.tab.name;
}
});
。已选定{
颜色:红色
}

  • {{tab.name}

我猜这是一个在ng repeat中包含范围的问题

尝试更改:

$scope.activeAdminTab = $scope.adminTabs[0].name;

致:


尚未测试,但这是我遇到的一个常见问题,带有角度ng重复范围;解决方案可能适合您。

非常希望这能奏效,但显然使用原语和对象并不是问题所在。它只是不喜欢我设置默认值的方式,我是出于某种原因。一定是外部发生的事情。我有一个带有ng的div,如果我也在寻找selectedTab,它工作得很好,只是tab本身没有高亮显示。如果你在dom检查器中查看li,你能看到class='selected'吗?也可能值得检查css是否正确包含-DOM检查器还应显示应用的样式。是的,除非单击,否则不要在检查器中添加类。
data-ng-class="tab.name == activeAdminTab..."
$scope.obj = {};
$scope.obj.activeAdminTab = $scope.adminTabs[0].name;
data-ng-class="tab.name == obj.activeAdminTab..."