javascript - ng-if 在 ng-repeat 中总是被评估为 true
问题描述
我在一个对象数组上循环,我想根据数组中每个项目的字段值显示一些东西。为此,我有一个 ng-repeat 遍历我的数组,以及一个 ng-if 评估我当前的项目值是否被占用。
由于某种原因,ng-if 似乎总是被评估为真(或根本不评估?)
编辑.html
<div data-ng-app='myApp' data-ng-controller='myCtrl'>
<div>
<div ng-repeat="legalRemedy in legalRemedies">
<div ng-if="legalRemedy.erased === false">
Only valid stuff here
</div>
</div>
</div>
</div>
控制器.js
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.bulletin.legalRemedies = [{
"erased": true // invalid stuff
}];
});
这是 jsfiddle (不应该显示任何数据,因为已擦除的属性为真) https://jsfiddle.net/vtcLpzmx/2/
这可能很愚蠢,但我找不到原因,这让我很生气
解决方案
您的代码运行良好。就在你的jsfiddle中,我认为你错过了添加角度脚本。这样它就不会将该小提琴视为角度应用程序。
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.bulletin = {};
$scope.bulletin.legalRemedies = [{"erased" : true}]
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
<div data-ng-app='myApp' data-ng-controller='myCtrl'>
<div>
<div ng-repeat="legalRemedy in bulletin.legalRemedies">
<div ng-if="!legalRemedy.erased">
Only valid stuff here
</div>
</div>
</div>
</div>
推荐阅读
- excel - 通过偏移方法将单元格复制到另一个工作表
- reactjs - 当我从端口 8000 提供服务时,为什么 fetch 调用在端口 3000 上工作?
- python - 密码重置未重定向到 django 中的模板 html 文件
- javascript - 如何判断数组是否包含任何子字符串
- javascript - 测量 div 上的时间量
- javascript - Django 无法加载 javascript 但加载 css(包括项目链接)
- reactjs - 使用添加计数按钮重新渲染太多
- html - 如何更改 textarea 中特定文本的背景颜色?
- sockets - 在 git bash 中杀死一个进程
- excel - 分配要粘贴复制的数据 VBA 的列