簡體   English   中英

Angular未知提供者,工廠包裝在匿名函數中

[英]Angular unknown provider with factory wrapped in anonymous function

當我聲明使用匿名函數時,工廠出現未知的提供程序錯誤(注入器):

(function () {
    'use strict';

    angular.module('app').factory('errorCodeFactory', errorCodeFactory);

    function errorCodeFactory() {
        var factory = {
            getMessage: getMessage
        };

        return factory;

        function getMessage(errorObject) {
            return "hi";
        };
    };
});

如果我聲明時未將其包裝在函數中,則它可以工作:

angular.module('app').factory('errorCodeFactory', function() {
    var factory = {};

    factory.getMessage = function (errorObject) {
        return "hi";
    };
    return factory;
});

不知道為什么第一個示例不起作用,而第二個示例卻起作用。 我也有其他工廠使用與第一個示例相同的方法,並且它們可以工作。 我肯定錯過了什么。

問題是包裝功能的末尾缺少括號

作品:

(function () {

})();

不起作用:

(function () {

});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM