Angularjs 在iOS模拟中解析.Cordova应用程序
因此,我有一个与cordova配合使用的angular应用程序,当服务于本地web主机时,它可以按预期工作,从parse.com推拉登录数据 但是,当我在IOS模拟器中编译和仿真时,似乎命令Angularjs 在iOS模拟中解析.Cordova应用程序,angularjs,cordova,parse-platform,ionic-framework,Angularjs,Cordova,Parse Platform,Ionic Framework,因此,我有一个与cordova配合使用的angular应用程序,当服务于本地web主机时,它可以按预期工作,从parse.com推拉登录数据 但是,当我在IOS模拟器中编译和仿真时,似乎命令 parse.initialize("453ioejblahgf3oi5j35p","f30903959fblahblah"); 正在赚$state.go无法工作 :( 仔细检查后,似乎Parse.initialize(“faerfaerf”;“aefaerfaer”)停止了它后面的所有代码-- 如果我将
parse.initialize("453ioejblahgf3oi5j35p","f30903959fblahblah");
正在赚$state.go无法工作
:(
仔细检查后,似乎Parse.initialize(“faerfaerf”;“aefaerfaer”)停止了它后面的所有代码--
如果我将警报移动到parse.init上方,它会触发。但是当它在parse.init之后时,它不会触发。Javascript是
解释的语言。这意味着,任何运行时错误都不会停止程序,直到到达特定行
查看您的问题,似乎未定义对象解析
。您是否包含它可能需要的任何Parse.js
文件?移动Parse.initialize()
到脚本末尾,这样它就不会停止其余代码的执行。我已将解析初始化放在一个单独的UserService.init()
中,必须在应用程序启动时解决
.state('tab', {
url: "/tab",
abstract: true,
templateUrl: "templates/tabs.html",
resolve: {
user: function (UserService) {
var value = UserService.init();
// alert(value); // for debugging
return value;
}
}
})
下面是UserService
代码的一个片段
init: function () {
var value = null;
var deferred = $q.defer();
// if initialized, then return the activeUser
if (parseInitialized === false) {
Parse.initialize(ParseConfiguration.applicationId, ParseConfiguration.javascriptKey);
parseInitialized = true;
console.log("parse initialized in init function");
}
setTimeout(function () {
var currentUser = Parse.User.current();
if (currentUser) {
deferred.resolve(currentUser);
} else {
deferred.reject({error: "noUser"});
}
}, 100);
return deferred.promise;
},
完整的解决方案在这里
init: function () {
var value = null;
var deferred = $q.defer();
// if initialized, then return the activeUser
if (parseInitialized === false) {
Parse.initialize(ParseConfiguration.applicationId, ParseConfiguration.javascriptKey);
parseInitialized = true;
console.log("parse initialized in init function");
}
setTimeout(function () {
var currentUser = Parse.User.current();
if (currentUser) {
deferred.resolve(currentUser);
} else {
deferred.reject({error: "noUser"});
}
}, 100);
return deferred.promise;
},