Angularjs - 承诺不起作用

时间:2015-10-23 10:09:40

标签: javascript angularjs promise angular-promise

我正在使用angular.js,我现在需要承诺。我之前使用过它,但此刻,我无法使它发挥作用。

创建产品后,我需要获取id以便稍后使用它,并使用此id添加更多内容。所以我需要等待创建产品流程并在其之后,做我想要的。但经过3天的尝试,我决定寻求帮助。

那是我的代码:

var product = new Product($scope.product);
product.supplierId = $scope.supplierId;
product.status = 'empty';
product.idParent = parentId;
console.log(product);
product.$save(function (data) {
  ['buyer', 'seller'].forEach(function (role) {
    var notification = new Notification({
      role: role,
      subject: 'Se ha creado un nuevo producto.',
      productId: data.id,
      productDescription:  $scope.currentUser.supplier.name
    });
    notification.$save();
  });
  ngNotify.set('Producto creado exitosamente.', 'success');
  $location.path('/catalogo/productos/' + data.id);
});

我删除了一些代码以便于阅读,也许我错过了分号或其他内容。但它确实有效。

我尝试使用promises(q和bluebird)来尝试使用promises(但是我错过了一些内容)我不知道如何让id稍后在.then()中使用它功能

我如何使用承诺来做到这一点?我有q和蓝鸟的承诺,我可以使用其中一个。

解决!

只需添加(删除分号):

.then(function (data) {
    //Here you have data.id
});

问候!

0 个答案:

没有答案