在Angular.js中通过检查作用域变量进行过滤
Filter in Angular.js by checking against a scope variable
我正试图从对象数组中获得满足特定条件的特定对象。
对象的id应等于作用域变量$scope.lobbyid
。我下面的当前方法不会将大厅对象传递到控制器中。
所选择的CCD_ 2表示站点上的活动选项卡的数据。因此容器数组在站点加载时只获取一次。
标记
<div ng-repeat="lobby in lobbies | filter:checkLobbyID(lobby)">
[[lobby.name]]
</div>
控制器
$scope.checkLobbyID = function($lobby) {
return $lobby.lobbyid == $scope.lobbyid;
}
阵列
"lobbies": [
{
"isglobal": true,
"lobbyid": 1,
"name": "GLOBAL",
},
{
"isglobal": false,
"lobbyid": 2,
"name": "stackoverflow rules",
},
{
"isglobal": false,
"lobbyid": 3,
"name": "sdadadad",
}
]
一个临时解决方案是将以下代码添加到tab开关事件中。但这需要一个副本和另一个作用域变量。如何使用过滤器实现这一点?
angular.forEach($scope.lobbies, function(lobby) {
if (lobby.lobbyid == $scope.lobbyid)
$scope.currLobby = angular.copy(lobby);
});
标记中不需要大厅参数。过滤器将隐含地将其传递给范围过滤器函数
<div ng-repeat="lobby in lobbies | filter:checkLobbyID">
http://jsfiddle.net/vrwQG/
关于
相关文章:
- 带有KendoUI组件的Javascript变量作用域
- Javascript变量作用域:从回调函数中提取变量
- 使用JavaScript回调函数了解变量作用域和闭包
- jquery.post和变量作用域
- 变量作用域:在函数之间传递的名称
- 在 AJAX 和 Javascript 中使用变量和变量作用域
- 节点.js/express.js中的变量作用域
- jquery ajax 回调变量作用域(为什么有些在作用域中,而另一些则不在作用域中)
- JavaScript 中的变量作用域
- ajax GET 和 POST 中的变量作用域
- Javascript:变量作用域和全局变量的弊端
- Javascript 自执行函数和变量作用域
- 拼接上的Javascript全局变量作用域/覆盖
- 在Node中与jsdom和jquery共享变量作用域
- NodeJS:代码优化和变量作用域
- Javascript数组变量作用域
- AngularJS ng控制器指令不接受javascript中的变量(作用域函数),也不给出任何错误
- 回调函数中的变量作用域呢
- JavaScript/jQuery变量作用域导致错误
- AJAX变量作用域