Lodash 和 AngularJS ngResource promise 效果不佳

Lodash and AngularJS ngResource promise don't work well

我在我的 AngularJs 应用程序中使用了 lodash,它适用于本地 collections/arrays。

当我尝试这样使用它时,它不起作用:

vm.colorsSizes = _.uniq(commonData.stock, 'colorName');

其中 commonData.stock 是一个从 ngResource 调用解析的数组。

angular
    .module("common.services")
    .factory("commonData",
            ["stockResource",
             commonData]);

function commonData(stockResource) {

    return {
        stock: stockResource.query()
    }
}

为什么会发生这种情况,我该如何解决?

听起来您正在尝试访问它,但它尚未解析且仍然是空的。试一试:

commonData.stock.$promise.then(function () {
    vm.colorSizes = _.uniq(commonData.stock, 'colorName');
});