问一个 ajax 获取数据后传递数据的问题

2017-10-31 22:09:23 +08:00
 waiaan

$.ajax({ url:, type:, dataType:, success: function(data){

   }
 }); 

function fn(){}

假设此时 ajax 请求已经获取到了 data 数据,我要在 fn 里面调用取得的 data,但是 fn 不能作为回调写入,又不能用一个全局变量来接 data,还有没有什么办法能够在 fn 里调用 data。 谢谢。

1308 次点击
所在节点    问与答
4 条回复
brickyang
2017-10-31 22:37:39 +08:00
在 fn 里监听一个事件,在 ajax 的回调中触发该事件。

对于浏览器可以用这个库: https://github.com/Olical/EventEmitter
SoloCompany
2017-10-31 23:37:28 +08:00
外面多套一个匿名函数,然后 data 就可以赋值给局部变量供 fn 访问了
Hypn0s
2017-11-01 00:22:42 +08:00
我比较好奇什么业务场景会要求“不能用一个全局变量来接 data ”,那用局部变量存起来可以吗?
meszyouh
2017-11-01 07:58:10 +08:00
直接在 ajax 的匿名回调函数里调用 fn

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/402400

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX