2012-10-04 47 views
0

我有两个之类的语句,钛移动语句的执行顺序

var image = selectPhoto(); 
uploadPhoto(image); 

我希望按顺序执行这些语句,但是这个代码用这种方式行不通。这两个语句同时被调用(我想这是由于多主题)。我该如何解决这个问题?

+0

你可以显示,你的上传syntex ...? – MRT

回答

1

你的问题是抽象的。你应该显示你的函数的代码。但是我认为你在你的函数中使用HTTPClient。除了xhr(HTTPClient对象)外,Titanium语句按顺序执行。它总是异步工作,即将请求发送到服务器,并执行下一个语句。我想你可能在这里遇到同样的问题。要解决它,你可以使用javascript setTimout函数或回调作为更高级的选项。

+0

selectPhoto()函数打开照片库来选择一张照片,然后uploadPhoto(image)函数将该照片上传到云(Appcelerator Cloud)。 – Ammar

+1

那么你可以在打开相册的成功回调中调用上传功能。这种方式只会在用户成功选择一张照片后才会调用,或者您可以使用setTimeout来延迟一段时间,以确保用户首先选择照片,然后上传完成。 –

+0

我这样做,但寻找更好的方法。 – Ammar