javascript - 如何从 Angular 1中的自定义指令调用任何 Controller 函数( Controller 可能是动态的)?

标签 javascript angularjs

您好,我创建了一个通用的自定义指令,用于所有屏幕中的删除功能,因此在删除元素后,我需要调用 Controller 函数来更新 View 。 Controller 根据 View 而不同。

angular.module('app.comon').directive('deletePopup', function modal(setterGetterService,restCallService) {
        return {

            template:'<div class="modal" id="delete-popup">' +
                       '<div class="modal-dialog">' +
                         '<div class="modal-content">' +
                           '<p>Are you sure want to delete ?</p>' +
                           '<div class="buttons-group text-center">' +
                             '<a ng-click="deleteList();" class="btn">delete</a> ' +
                             '<a ng-click="cancelAction()" class="btn btn-cancel">cancel</a> ' +
                           '</div>' +
                         '</div>' +
                       '</div>' +
                     '</div>',

            link: function (scope, element, attrs) {
                scope.cancelAction = function () {
                    $('#delete-popup').hide();
                }

                var dropper;

                scope.$on("DELETE_LIST", function(event, item){
                    dropper = item;
                 });

                 scope.deleteList = function () {

                    var deleteInfo =setterGetterService.getDeletePopupInfo();
    var headers =deleteInfo.headers;
                    var params = {
                        "URL" :deleteInfo.restCall ,
                        "METHOD" : deleteInfo.method,
                    }

                    restCallService.getResponse( headers, params)
                      .then(function(data) {
                        if (data.status == "success") {
                          alert("groupDeleted");     
                          $('#delete-popup').hide();         
                        } else {
                           alert(data.msg);
                        }

                     });

                }
            }
        }
    });

最佳答案

您所问的问题不是与其他 Controller 交谈的正确方式。 您实际上应该做的事情就像发出一个事件一样简单,该事件将通知另一个 Controller 需要执行某些操作的情况。

关于javascript - 如何从 Angular 1中的自定义指令调用任何 Controller 函数( Controller 可能是动态的)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47051165/

相关文章:

javascript - ng-include 和 ng-repeat - 删除子项

javascript - d3.csv promise 挂起并获取其数据

javascript - 从 Javascript 调用托管在不同服务器上的 WCF

javascript - 通过 Angular js 处理 JavaScript 插件

javascript - 当输入具有范围指令时,Angularjs 绑定(bind)问题

javascript - 有什么方法可以设置 HighCharts 热图数据的最小值和最大值吗?

javascript - 在 AngularJS 应用程序中使用 select2 插件

php - 如何将 php 页面加载到 div 中并运行其(java)脚本?

javascript - YUI 富文本编辑器在最新的 Firefox 上损坏

javascript - 允许用户安全地将 HTML 保存到数据库吗?