从angularjs中获取外部承诺的价值

时间:2015-06-18 10:13:33

标签: javascript angularjs promise

我已获得以下代码:

generateFromID: function (icon, width, height, color) {

      path = [];

      iconData.get(icon).then(function (iconP) {

        var path = iconPathCache.generate(iconP);

      });

      console.log(path);

      return this.generate(path, width, height, color);


    },

我怎样才能获得.then以外的路径?

console.log(iconData.get(icon));

将导致:

Promise {$$state: Object}$$state: Object__proto__: Object

以下代码也不起作用:

return iconData.get(icon).then(function (iconP) {

         return path = iconPathCache.generate(iconP);

      });

      return this.generate(path, width, height, color);

谁能告诉我我做错了什么?

1 个答案:

答案 0 :(得分:0)

很抱歉,但我认为你对一般的承诺和异步感到困惑。

我猜测来自path的{​​{1}}值需要传递给iconData.get(icon),可以通过以下方式完成:

this.generate

现在generateFromID: function (icon, width, height, color) { return iconData.get(icon).then(function (iconP) { var path = iconPathCache.generate(iconP); console.log(path); return this.generate(path, width, height, color); }); }, 会返回一个承诺。