【发布时间】:2011-12-11 01:34:54
【问题描述】:
我目前正在制作我的第一个 Titanium iPhone 应用程序。
在我得到的模型中:
(function() {
main.model = {};
main.model.getAlbums = function(_args) {
var loader = Titanium.Network.createHTTPClient();
loader.open("GET", "http://someurl.json");
// Runs the function when the data is ready for us to process
loader.onload = function() {
// Evaluate the JSON
var albums = eval('('+this.responseText+')');
//alert(albums.length);
return albums;
};
// Send the HTTP request
loader.send();
};
})();
我在如下视图中调用此函数:
(function() {
main.ui.createAlbumsWindow = function(_args) {
var albumsWindow = Titanium.UI.createWindow({
title:'Albums',
backgroundColor:'#000'
});
var albums = main.model.getAlbums();
alert(albums);
return albumsWindow;
};
})();
但是,对模型的调用(使用 HTTP 获取一些数据)似乎没有等待响应。在我发出警报时的视图中,它还没有从模型接收到数据。如何以最佳实践方式做到这一点?
提前致谢
【问题讨论】:
标签: javascript iphone model-view-controller titanium titanium-mobile