如何将一个参数传递给angularJs中的工厂?

时间:2015-04-09 10:13:35

标签: javascript angularjs

这是我的服务:

    app.factory('ApiStoreService', function ($q) {

        return $q(function (resolve, reject) {

            new SwaggerApi({
                discoveryUrl: "https://apiurl",
                apiKeyName : "apiKey",
                apiKey: "xxxxxxxxx",
                success: function () {
                    resolve(this);
                }
            });
        }) 
    });

我称之为:

ApiStoreService.then(function (store) {// do something with store}

我想将硬编码值作为参数传递。以角度实现这一目标的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

    app.factory('ApiStoreService', function ($q) {
    return{
        DoFunction: function(value){
            return $q(function (resolve, reject) {

                new SwaggerApi({
                    discoveryUrl: "https://apiurl",
                    apiKeyName : "apiKey",
                    apiKey: "xxxxxxxxx",
                    success: function () {
                        resolve(this);
                    }
                });
            })
        }
    }
});

并像这样使用它:

var Obj = { name:'tim'};
ApiStoreService.DoFunction(Obj);

答案 1 :(得分:0)

我认为Angular Constants / Value会达到目的,请阅读以下要点, https://gist.github.com/demisx/9605099