将 webSqlexecuteSql 调用包装在 jQuery Deferred / Promise 中
executeSql 的 html5 规范包括成功回调和失败回调:
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM MyTable WHERE CategoryField = ?',
[ selectedCategory ],
function (tx, rs) { displayMyResult(rs); },
function (tx, err) { displayMyError(err); } );
});
如果我使用 jQuery,有没有办法使用新的 jQuery Promise/Deferred Hotness 来实现此功能?
The html5 spec for executeSql includes a success callback and a fail callback:
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM MyTable WHERE CategoryField = ?',
[ selectedCategory ],
function (tx, rs) { displayMyResult(rs); },
function (tx, err) { displayMyError(err); } );
});
If I were using jQuery, is there a way to implement this using the new jQuery promise/deferred hotness?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我只是想再添加一个例子。
I just wanted to add one more example.
在寻找其他东西时偶然发现了这个问题,但我想我有一些模板代码可以让您开始在 jQuery Promises 中包装 webSql 查询。
这是将
$.extend
扩展到您自己的提供程序的示例sqlProviderBase
。我有一个带有taskProvider
的示例和一个在页面显示事件上调用taskProvider
的页面。它非常稀疏,但我希望它可以帮助其他人指明正确的方向,以包装查询以保证更好的处理。Stumbled across this question while looking for something else, but I think I have some template code that will get you started wrapping webSql queries in jQuery Promises.
This is a sample
sqlProviderBase
to$.extend
onto your own provider. I've got an example with ataskProvider
and a page that would call to thetaskProvider
on the page show event. It's pretty sparse, but I hope it helps point others in the right direction for wrapping queries in a promise for better handling.我一直在等待答案,但到目前为止还没有任何消息,所以我会尝试一下。我无法运行此程序,因此对于任何错误我深表歉意。
您是否正在寻找类似的东西:
I've been waiting for an answer, but nothing so far, so I'll take a shot. I can't run this so I apologize for any mistakes.
Are you looking for something like:
我发现将延迟事务包装在函数中并返回承诺会创建一个外观简洁且可重用的延迟/承诺模式实现。
I find that wrapping the deferred transaction in a function and returning the promise creates a clean looking and reusable implementation of the deferred/promise pattern.