工人职能与工厂职能

时间:2016-04-14 16:15:51

标签: javascript angularjs

我熟悉工厂功能这个术语,但是我无法将这个术语与工作人员的功能区分开来...... 有人可以解释这两个术语之间的区别吗? 当我们更喜欢使用工人职能或在哪种特殊情况下? Plz尝试用一些简单的例子和​​理论来解释它,这样我就能更好地理解它...... 我在这里读了一个示例代码:

myApp.directive("directiveName", function () {
      return function (scope, element, attrs) {
             if (scope.value == attrs["somevalue"]) {
                 element.css("color", "red");
             }
      }
});

1 个答案:

答案 0 :(得分:1)

在Angular JS中,我们有不同的Module方法,它们接受函数作为参数。我们将它们称为工厂函数,因为它们创建了Angular JS用于执行实际工作的对象。这些工厂函数可以返回另一个称为工作函数的函数。

例如,我们有以下指令: 该指令的第二个参数是工厂函数。

myApp.directive("myDirective",  function() { // factory function
    // implementation code goes here
});

以下工厂函数中的return语句返回另一个负责执行实际工作的函数:

myApp.directive("myDirective",  function() { // factory function
    return function(scope, element, attrs) { // worker function
        // implementation code goes here
    }

});

上述工厂函数返回的此函数通常称为工作函数。在指令的情况下,此功能通常称为链接功能...