如何在ui-grid中使用$scope变量显示
How to use ng-show in ui-grid within celltemplate using $scope variable
我试图显示一个基于作用域变量的元素。我似乎不能使它工作。因为美元范围。我希望出现"活跃"这个词。下面是我的代码:
var app = angular.module('app', ['ngTouch', 'ui.grid']);
app.controller('MainCtrl', function ($scope, $timeout) {
$scope.hi = true;
$scope.gridOpts = {
columnDefs: [
{ name:'name', field: 'name' },
{ name:'isActive', field: 'isActive'},
{ name:'template',cellTemplate:'<div><a ng-show="hi">Active</a><a ng-hide={{row.entity.isActive=="N"}}>Deactive</a></div>'}
]
};
$scope.waiting = "Waiting...";
$timeout(function () {
$scope.gridOpts.data = [{ name: 'Bob' ,isActive:'Y'}];
}, 3000)
.then(function() {
$timeout( function() {
$scope.gridOpts.data = [{ name: 'John',isActive:'N' }];
}, 3000);
$scope.waiting = "Waiting again...";
})
});
http://plnkr.co/edit/eLFjp8qJCtBRLTrQ7GE5?p =预览
ui-grid使用隔离作用域创建网格,这意味着该模板背后的作用域不是您在其中定义模板的作用域。
但是,这个隔离的作用域包含对这个原始作用域的引用,您可以作为grid.appScope
访问它。
如果您将hi
更改为grid.appScope.hi
,则示例有效。这里是分叉版本
参见ui-grid API文档:appScope:
appScope:引用应用程序作用域(ui-grid元素的父作用域)。在ui-grid控制器中分配
gridOptions使用。appScopeProvider来覆盖$scope的默认赋值。$parent有任何引用
相关文章:
- $scope变量被视为字符串AngularJs
- $scope变量,ng隐藏/显示
- $Scope变量在HTML中不更新,尽管在控制器中不断更新
- $scope变量发生更改时未触发Angular$watch
- 将Scope变量作为指针发送,并在控制器外部对其进行更改
- 正在从$scope变量中提取值
- 无法使用angularjs重置$scope变量
- 在 ng-click 中设置$scope变量指令
- 在从websocket服务器推送消息后更新$scope变量
- AngularJS中存在与$scope变量相关的问题.UI中的值未更改
- JavaScript未更新$scope变量的一部分
- 如何使用AngularJS在ng init中传递scope变量
- 如何访问ng-init或ng-checked中服务回调函数中声明的$scope变量
- 在我的HTML中用ng-init初始化$scope变量时出现问题
- angular js$scope变量与字符串绑定
- 如何在ng-init中使用$scope变量
- $scope变量从一个函数传递到另一个函数
- 如何在javascript中填充Angularjs$scope变量
- 阻止$scope变量副本侦听其原始副本
- 我们如何在Angular JS中使用$Scope变量而不声明