我创建了带有指令的按钮,现在需要单击以调用工厂。问题是页面打开时会自动调用代码。我只需要一个指令就可以做到这一点。

.directive("addcomment",addcomment);

         function addcomment(){
           var addComment = {
                link: link,
                restrict: "E",
                template: '<input type="submit" addcomments class="btn btn-default pull-right" value="Send" />'
           };

           return addComment;

           function link(scope, element, attrs){
              //RUN FACTORY
                };
           }
         }


有什么解决办法吗?

最佳答案

所以,在你的

function link (scope, element, attrs) {
    //RUN FACTORY
}


您需要将工厂执行绑定到click事件。

function link (scope, element, attrs) {
    element.bind('click', function() {
        //Run the factory here
    });
};


我想这应该工作。

09-25 17:14