向 parse.com 发送数据并更新角度$scope

Sending data to parse.com and update angular $scope

本文关键字:更新 scope 数据 parse com      更新时间:2023-09-26

我正在向 parse.com 的类发送数据,我想运行此函数并更新$scope而无需重新加载视图。

要创建一个运行以下函数的Programme可以正常工作,但是它有时不会在创建新程序后更新视图,并且需要刷新页面(当调用整个函数时,如底部所示 - getProgrammes();

getProgrammes = function() {
$ionicLoading.show();
var programmesArray = [];
var QueryProgramme = Parse.Object.extend("Programme");
var query = new Parse.Query(QueryProgramme);
query.equalTo("userId", userId);
query.find({
success: function(results) {
  for(var i=0; i < results.length; i++) {
    var object = results[i];
    var programmeData = { title : object.get('programmeTitle'), 
                          id : object.id,
                          exercises : object.get('exerciseData')
                        };
    programmesArray.push(programmeData);
  }
  $scope.programmes = programmesArray;
  $scope.$apply();
  $ionicLoading.hide();
   },
   error: function(error) {
   alert('You do not have any Programmes - please create one');
   }
 })
};
getProgrammes();

我想我可能通过使用$scope.apply()来破解它 - 因此使其不可靠。帮助使用正确的功能以自动更新$scope会很棒。

我一直在使用在这里找到的库:

https://github.com/brandid/parse-angular-patch

本质上,我只是引用解析角度.js文件,然后将依赖项包含在我的应用程序中,例如:

angular.module('app', [
  'parse-angular',
]);

然后我只是随时使用 Parse 查询,它们会正确参与 $scope$apply。该库只是对 Parse 方法进行一些简单的包装,以使异步调用遵守角度规则。