getInstallInfo () { var openinstall = api.require('openinstall'); openinstall.getInstall({ timeout:10 },function(ret, err){ alert(JSON.stringify(ret)); }); }
getInstallInfo();
代码如上,要怎么把 ret 的值传出来呢?
1
lbyo 2019-12-30 19:40:48 +08:00
return
|
2
xiaoming1992 2019-12-30 19:46:31 +08:00 2
你这都写的什么东西,搞个 markdown 语法,至少分个行吧?
回复里面好像用不了 markdown,你只能将就着看了 ``` function getInstallInfo() { return new Promise((resolve, reject) => { const openinstall = api.require('openinstall'); openinstall.getInstall({ timeout:10 }, (ret, err) => { if (err) { reject(err) } else { resolve(ret) } }); }) } getInstallInfo() .then((val) => { alert(JSON.stringify(val)) }) .catch((err) => { console.error(err) }) ``` 虽然代码是这样的,但是这些东西你都不能直接用,因为 Promise 有兼容性问题,箭头函数需要转译,所以,你再看看这方面(webpack + babel)的东西吧。 |
3
ochatokori 2019-12-30 21:02:07 +08:00 via Android 2
2 楼的 promise 箭头函数现在已经可以直接在 chrome 直接跑了了
如果你想要兼容又不想搞 babel 省事的就是给 getInstallInfo 传个 callback 方法,然后在你 alert 的地方调用这个方法把 ret 传给 callback,然后把使用 ret 的逻辑全写到 callback 里面(著名回调地狱) |
4
KuroNekoFan 2019-12-31 08:37:46 +08:00 via iPhone
trigger 一个 custom event 也还行
|