在 angularJS 中打开相同局部视图和控制器的多个实例

Open multiple instances of same partial view and controller in angularJS

我正在使用局部视图和 angularJS 开发单页应用程序。 我有一个场景,我必须使用不同的数据多次打开相同的局部视图。

我试图通过在 js 和 html 中添加 app.directive 和更改控制器名称来使控制器名称动态化,然后调用 Angular-Complies 方法,但问题是它为所有以前打开的选项卡更改它。 然后我尝试制作多个 js 文件并使用 Jquery 在局部视图中更改控制器名称,但仍然无济于事。这是我的代码。

HTML:

<div ng-app="myApp">
   <!-- this is in view1.html -->
    <div ng-controller="DashboardDesignerController">
            <div ng-repeat="widget in workspace.widgets">stuff here
            </div>
   </div>
    <!-- this is in view1.html -->
    <div ng-controller="DashboardDesignerController">
            <div ng-repeat="widget in workspace.widgets">stuff here
            </div>
   </div>

//Angular 控制器在单独的 JS 文件中。

   app.controller("DashboardDesignerController" , function ($scope, $http, 
   $rootScope, $compile, $injector, $timeout) {
   }

我希望根据每个选项卡的数据分别处理每个选项卡,但目前当我转到第一个打开的选项卡时,它的范围随着最后一个打开的选项卡而改变。 是否有内置的方法 angularJS 可以做到这一点,或者一些好的方法也会受到赞赏。

实际上问题是,我在核心 JavaScript 中调用图表向下钻取方法,该方法将 $scope 替换为上次打开的。 通过使用 JQuery

获取范围解决了该问题
var scope= angular.element($('.k-state-active').find('.tempDiv')[0]).scope();

并使用此作用域变量调用了 angular 函数。