[发案] Ionic 3 同步型Http Get

楼主: pcmanxyz (PCMANXYZ)   2023-08-25 04:17:01
各位先进, 各位前辈大家好
旧系统已经无人维护
临危受命要新增一个功能
小弟是这一块的新手
环境如下:
IONIC3 (npm﹑angular)
需求如下:
我需要同步的Http Get 方案
http.get 取值好, 程式才会往下走
而不是还要额外写等待time循环去等值
如:
alert('a');
let ltTmp = http.get(xxxxx)
alert('b');
显示 alert a
取得 leTmp 之值 之后 , 才会 alert b
找了一个晚上, 有找到范例(有人说用Promise可以解决), 但还是有问题
网站回传值只是一般字串, 或是DataTable xml , 不是json格式
httpget55555()
{
return new Promise(resolve => {
this.http.get('http://www.a.b/Check.php')
.map(res => res.json())
.timeout(2000)
.subscribe((data: any) => {
resolve(data.Data);
alert(data.text());
}, error => {
resolve(error);
});
});
}
alert(data.text()) 还是会在 alert('b')之后才出现, 没有卡住
预算:500-1000
若这预算太可笑,请前辈别见怪, 因为我不太了解ionic的行情
还请前辈们指点预算
谢谢大家
提案人:我
联络方式1:站内信
联络方式2:
有效期间: 1个月
作者: kimi112136   2023-08-25 06:46:00
async await
作者: kyoe (缘份‧不再)   2023-08-25 09:32:00
同上
作者: zerof (猫橘毛发呆雕像)   2023-08-25 21:51:00
Promise.then if you’re using Promise
作者: bigbearlazir (肥宅)   2023-08-25 23:28:00
看是要加await在http.get()这里还是传一个callback给get这个method 在这allback里面去呼叫alert('b')当然你解析完之后要记得去呼叫这个callback^或是catch到error

Links booklink

Contact Us: admin [ a t ] ucptt.com