javascript - 变量是如何在 Angular 工厂中初始化的?

标签 javascript angularjs constructor angularjs-service angularjs-factory

我想知道 Angular 工厂的构造函数是否可以用于在工厂初始化时运行一些代码。例如,我有一个工厂服务,每当应用程序启动或每当调用/初始化该工厂时,我都想从该服务打印到控制台。有人可以解释一下吗?

Angular 工厂:

            app.factory('HomeFactory', function() {
            // create a object using constructor function
              var HomeFactory = function() {
                 console.log('in the constructor function');
              };
              HomeFactory.contactSubmit = function() {
                var self = this;
                console.log(self.model);
              }
              // returning the factory object
              return (HomeFactory);
              });

Angular Controller :

  app.controller('HomeController', function($scope, $state, HomeFactory) {
    $scope.HomeFactory = HomeFactory;
}

);

最佳答案

您创建的工厂只是一个构造函数。您需要实例化实例才能调用它:

$scope.home1 = new HomeFactory();
$scope.home2 = new HomeFactory();

关于javascript - 变量是如何在 Angular 工厂中初始化的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37755584/

相关文章:

c++ - 无法在从 C++ 类继承的结构上调用正确的构造函数

javascript - Javascript/React Native 中奇怪的数组行为

javascript - Javascript 中的逻辑相等表达式

HTML RTL/LTR 开关

angularjs - 指令标签之间的文本

Delphi:记录构造函数与工厂函数

javascript - 读取 xml 文件出了什么问题?

php - Javascript - 在页面加载期间且仅在页面加载期间发生的 Onclick 事件

javascript - Typeahead 不在下拉列表中显示文本

android-fragments - 将项目从 eclipse 迁移到 studio 时任务 ':app:transformClassesWithDexForDebug' 执行失败