我有一个内置Backbone的phonegap应用程序,ajax调用花费了相当长的时间。加载46kb json文件的加载时间约为2分钟或更长。
我正在使用ios模拟器来ping我的本地node.js服务器。 node.js服务器对天气服务执行https.get()请求并返回它。当我在保龄球中使用网址时,通话工作非常快。
问题与移动内存管理或下划线模板有关吗?帮我!谢谢!
// views / weather.js
template: _.template($('#hero-1').html()),
render: function() {
var view = this;
$(this.el).html(this.template(view.model.toJSON()));
},
getWeatherData: function(lat, long){
view.weatherModel = new this.model();
view.weatherModel.fetch({
data: {
longitude: lat,
latitude: long
},
success: function(data) {
view.dataReturned(data.attributes);
view.render();
}
});
},
// models / weather.js
return Backbone.Model.extend({
url: 'http://127.0.0.1:3000/weather',
parse: function(response){
console.log("Parsing Response", response);
response.weather.currently.avgTemp = Math.round(response.weather.currently.temperature);
return response;
}
});
// html / Template
<script type="text/template" id="hero-1">
<div id="weather-temp" class="weather-temp">
<%= weather.currently.avgTemp %>
</div>
</script>
谢谢!
请注意: 如果我做这样的标准电话:
$.ajax({
type: "GET",
crossDomain:true,
async: false,
contentType:"application/json; charset=utf-8",
url:"http://127.0.0.1:3000/weather?longitude=-122.406417&latitude=37.785834",
success:function(data) {
console.log('success');
console.log(data);
}
});
它只是快速超时但如果我在模拟器的safari控制台中执行它将会工作。
答案 0 :(得分:0)
我没有意识到XCODE会重置ios Simulator的位置。
打开模拟器:
窗口&gt;调试&gt;位置&gt;自定义位置
设置新位置。