Angular Manager服务

时间:2016-02-07 04:54:29

标签: angularjs

我有一个带有指令的page.html。我还有一个服务,我想用它作为指令和page.html控制器之间的事件管理器。

我是Angular的新手,所以我不知道我是否正确地接近了这一点。如果说我的控制器点击了一个按钮,我希望服务更新指令。我只是把指令作为我服务的依赖吗?

2 个答案:

答案 0 :(得分:0)

没有。您必须在您的指令中注入您的服务。 该服务应该处理与您的服务器或严格的业务逻辑的通信,如果您有通信和业务逻辑,最好必须分成两个服务。 指令仅适用于可视化部分。

事件应该放入指令“链接”功能和可视化功能到“控制器”但记住。 Angular不是jQuery,所以很多像“click”这样的事件在角度上是过时的,我的意思是它们由控制器中的属性自动处理。

答案 1 :(得分:0)

这听起来像是一种很好的方法,并且通常是必要的,因为服务是单身人士和控制人员,而指令则不是。您将把服务注入到页面控制器的指令 AND 中。这样两者都可以作用于服务,服务可以充当两者之间的桥梁。

app.service("myService", function() {
    //define your service
});

app.directive('myDirective', function (myMervice) {
    return {
        template: '...',
        restrict: '...',
        scope:true,
        controller: function($scope) {
            //you can use the service here
        }
    };
});

app.controller("myController", function($scope, myMervice) {
    //you can use the service here
});