我正在使用 angularJS 进行扩展,但过滤器有问题。
我在弹出页面中有一个按钮,单击时,按钮的祖先节点被阻止,有关其祖先的信息将存储在 localStoarge 中,因此当再次从服务器获取数据时,我将使用过滤器过滤以前的信息。
这是我的代码:
在过滤器中:
app.filter('hideDeadline', function()
{
return function(deadline){
if(0 > JSON.parse(localStorage['rmed_deadlines']).indexOf(deadline)){
return deadline;
}
}
})
在 popup.html 中:
<li class="deadline" ng-repeat="deadline in deadlines | filter:hideDeadline | orderBy:'time' " ng-hide="hideDeadline">
<div class="btn-group">
<button class="btn" ng-click="removeDeadline(deadline)">complete</button>
<button class="btn" ng-click="removeDeadline(deadline)">ignore</button>
</div>
<hr/>
</li>
和我的controller.js中的一些东西:
$scope.removeDeadline = function(deadline){
var old_value = JSON.parse(localStorage.getItem('rmed_deadlines'));
old_value.push(deadline);
localStorage.setItem('rmed_deadlines', JSON.stringify(old_value));
this.hideDeadline = true;
}
但它不起作用。点击后可以阻塞节点,信息会存储在localStorage中,但是重新打开扩展时,完成的项目仍然存在,是不是过滤器有问题?