如何从私有模块访问模块上的公共方法?

时间:2014-08-19 16:09:19

标签: javascript angularjs jasmine revealing-module-pattern

我有这个非常讨厌的问题。我需要能够从私有模块模式中访问公共模块功能。我已经在有问题的一行写了评论......有什么方法可以做到这一点吗?

angular.module("myApp").factory('models', [function () {

    function itemModel(dtoItem) {

        this.type = dtoItem.type;

    }

    function groupModel(dto) {

        this.items = [];

        angular.forEach(dto.getFeatures(), function (item) {
            self.items.push(new itemModel(item)); //THIS NEEDS TO BE self.items.push(new ItemModel(item)); (Notice the use of the capital letter to denote a public function) so that I can run a test externally and check the type of the 'items'
        });

    }

    return {
        ItemModel: itemModel,
        GroupModel: groupModel
    }

}]);

1 个答案:

答案 0 :(得分:0)

阅读完本书Learning JavaScript Design Patterns后,我意识到你无法做到。