Angularjs ng-show不起作用

时间:2017-08-21 19:54:53

标签: javascript html angularjs

当我通过ng-click设置selectedManager时,为什么我的容器没有显示?

HTML:

<tr ng-repeat="manager in allManagers" ng-click="openDetails(manager)">
<div class="container" ng-show="selectedManager">

JS:

$scope.selectedManager;
$scope.openDetails = function(item) {
  selectedManager = item;
  console.log(selectedManager);
}

Console.log是否成功打印了对象?

2 个答案:

答案 0 :(得分:3)

这是因为在您的代码中:

$scope.selectedManager;
$scope.openDetails = function(item){
selectedManager=item;
console.log(selectedManager);
}

您正在为 selectedManager 分配值,这是一个局部变量,而不是范围变量 $ scope.selectedManager

要使其有效,您可以使用$scope.selectedManager代替selectedManager

OR

直接指定$scope.selectedManager=item

在HTML中无法访问局部变量,只有范围变量是。

答案 1 :(得分:1)

您应修改$scope.selectedManager属性:

$scope.openDetails = function (item) {
    $scope.selectedManager = item;
    console.log(selectedManager);
};