Javascript 推动一个价值&;在AngularJS中访问嵌套JSON
我在向我的离子型/角度型项目中的嵌套数据推送值时遇到问题 我想在每天的时间(如果有)中添加一个布尔值,我的json是这样的(我通过一个严格的http调用检索json,所以它的树结构不能改变) 我的结果是这样的 我的htmlJavascript 推动一个价值&;在AngularJS中访问嵌套JSON,javascript,angularjs,json,ionic,lodash,Javascript,Angularjs,Json,Ionic,Lodash,我在向我的离子型/角度型项目中的嵌套数据推送值时遇到问题 我想在每天的时间(如果有)中添加一个布尔值,我的json是这样的(我通过一个严格的http调用检索json,所以它的树结构不能改变) 我的结果是这样的 我的html <ion-list ng-repeat="(key, value) in filteredDays" ng-model="value.checked" ng-checked ="val
<ion-list ng-repeat="(key, value) in filteredDays"
ng-model="value.checked"
ng-checked ="value.checked">
<div class="item item-divider">
<h3>{{key}}</h3><!--{{value}}--></div>
<ion-toggle ng-repeat="x in value"
ng-model="value"
ng-checked="x"
>
{{x}}
</ion-toggle>
*/
我留下了一条关于我被卡住的地方的评论,我似乎不知道如何将布尔值推送到时间切换项数组。我设置了一个
此外,我曾尝试在这个项目中与lodash合作来处理数据(并从列表中获取“所有年”、“季节从”、“季节到”值),我相信我已经正确设置了它,但是,我对它太缺乏经验,无法让它做我想做的事情
任何帮助都将不胜感激。
$scope.filteredDays
不是数组,因此没有forEach
方法。与此相反:
var checked = false;
$scope.filteredDays.forEach(function(newCheckItem) {
newCheckItem.checked = checked;
});
试试这个:
var checked = false;
Object.keys($scope.filteredDays).forEach(function(key) {
$scope.filteredDays[key].checked = checked;
});
这似乎没有破坏它,但它确实似乎推动了选中布尔值,只需创建一个日期名称数组,并对照它检查键名称。如果它在day name数组中,则添加布尔值。你可以使用u.contains或普通的旧indexOf来检查键。你认为你可以做另一个答案,并告诉我如何实现这一点,我仍然在计算lodash@vbranden
var checked = false;
$scope.filteredDays.forEach(function(newCheckItem) {
newCheckItem.checked = checked;
});
var checked = false;
Object.keys($scope.filteredDays).forEach(function(key) {
$scope.filteredDays[key].checked = checked;
});
var dayNames = ["sunday ", "monday",... Etc];
_.forEach($scope.filteredDays, function(v, day) {
if (_.contains(dayNames, day)) {
v.push(checked);
}
});