我有一个categoriesPanel控制器,在ng-click上我想在ng-controller productsPanel中显示该类别的所有产品。我遇到的问题是,每次我点击ng-click =" selectorCategory"刷新页面后,我获得了所点击类别中的所有产品。
public JsonResult SearchNodesByTags(string[] tags)
{
var dbTags = _DbContext.Tags.Where(t => tags.Contains(t.DisplayName)).ToList();
var nodes = _DbContext.Nodes.Where(n => n.Tags.Intersect(dbTags).Any());
// Error about intersection with non primitive
return Json(nodes);
}
这是我的角度脚本,它从后端获取正确的数据,但数据仅在刷新页面时显示在producsPanel控制器中。我想在你点击ng-click时显示数据。
<div class="col-md-6 m-t-10" ng-controller="productsPanel" style="padding-right:1px;">
<div class="panel panel-default" style="height: 700px">
<div class="panel-body">
<div ng-repeat="product in Products" class="productRow">
<a href="javascript:;" class="btn btn-white btn-xlarge btn-block">{{product.Product}}</a>
</div>
</div>
</div>
</div>
<div class="col-md-3 m-t-10" ng-controller="categoriesPanel" style="padding-left: 0; padding-right: 5px">
<div class="panel panel-default" style="height: 700px">
<div class="panel-body">
<div ng-repeat="category in Categories" class="categoryRow">
<a href="javascript:;" data-id="{{category.CategoryId}}" ng-click="selectedCategory($event)" class="btn btn-white btn-xlarge btn-block">{{category.Category}}</a>
</div>
</div>
</div>
</div>
答案 0 :(得分:0)
当调用getcategoryproducts时,您指向的产品数组可能会变得清晰。你能修复ajax_getCategoryProducts
的回调并改变成功,将元素推入数组而不是重新分配。
.success(function(data){
$scope.Products.length=0;
data.forEach(function(p) {
$scope.Products.push(p);
});
$localStorage.Products = $scope.Products;
});