Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 仅调用控制器功能一次,两个div使用同一控制器_Javascript_Angularjs_Asp.net Mvc 3 - Fatal编程技术网

Javascript 仅调用控制器功能一次,两个div使用同一控制器

Javascript 仅调用控制器功能一次,两个div使用同一控制器,javascript,angularjs,asp.net-mvc-3,Javascript,Angularjs,Asp.net Mvc 3,我正在做angularjs。我有两个分区共享同一控制器。我的控制器代码是 var app=angular.module('categoryPageApp', []); app.controller('NgProducts', function($scope,UpdateService) { $scope.orderby=5; $scope.pageNumber=1; $scope.loadProducts=function($scope){ //he

我正在做
angularjs
。我有两个分区共享同一控制器。我的控制器代码是

var app=angular.module('categoryPageApp', []);
app.controller('NgProducts', function($scope,UpdateService) {

   $scope.orderby=5;
   $scope.pageNumber=1;
   $scope.loadProducts=function($scope){
             //here goes ajax call
     };

 });
我的两个控制器相同的div是

<div ng-app="categoryPageApp">
<div id="cat-products" ng-controller="NgProducts">
</div>
<div id="brand-filter" ng-controller="NgProducts">
</div>
</div>

正如我们所看到的,现在所有变量都将被声明两次,并且还将调用updatefunction。 我不希望这种情况发生,因为一次
http
调用就可以完成这项工作。有什么解决办法吗

我还想使用angular js为我的产品构建寻呼机。任何帮助都将不胜感激。

请执行以下操作:

<div ng-app="categoryPageApp" ng-controller="NgProducts">
    <div id="cat-products"></div>
    <div id="brand-filter"></div>
</div>

加载产品后,您可以尝试存储一些标志,如下所示:

app.controller('NgProducts', function($scope,UpdateService) {
   if (!$scope.productsAreLoaded)
     $scope.orderby=5;
     $scope.pageNumber=1;
     $scope.loadProducts=function($scope){
        //here goes ajax call
        $scope.productsAreLoaded = true;
     };

});

您是否尝试过将对象包装在一个div中,并且只使用了一次
ng controller=“NgProducts”
?实际上,两个div是局部视图,不能包装在一起,这就是为什么我必须分别分配控制器的原因。