js promise 封装异步方法
const foo = str => {
const len = str.length
setTimeout(() => {
bar({
str,
len
})
}, len * Math.random())
}
const barz = string => new Promise(resolve => {
// 代码开始
foo(string)
global.bar = // 该怎么写
// 代码结束
})
barz('12345').then(o => console.log(o.len)) // 5
barz('123').then(o => console.log(o.len)) // 3
barz('123456').then(o => console.log(o.len)) // 6
已知 foo 方法,输入字符串,一段时间后会调用 bar 方法
现在要写一个 barz 方法,把 foo 封装成一个 promise
对应的输入有对应的返回,但是代码该如何写呢?
如何用 promise 的方式正确 handle 对应的 bar?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果我没理解错的话,你的意思应该是把
foo
封装成能返回Promise
的吧?那就是让 bar 去resolve
就行了:这样来订阅。。。