在http模块nativescript中导航

时间:2016-12-06 12:21:27

标签: node.js asynchronous nativescript synchronous

请帮我解决这个问题 我希望在http模块完成其请求后导航到另一个帧。代码如下:

var datanya = 'token='+konfigurasi.tokenapps+'&email='+inputan['email']+'&nama='+inputan['nama']+'&handphone='+inputan['handphone']+'&alamat='+inputan['alamat']+'&longitude='+longi+'&latitude='+lat              +'&model='+cekPlatform.device.model+'&tipe='+cekPlatform.device.deviceType+'&manufaktur='+cekPlatform.device.manufacturer
+'&region='+cekPlatform.device.region;
httpModul.request({
                    url:  'http://example.com/c_user/daftar/',
                    method: "POST",
                    timeout: 10000,
                    headers: { "Content-Type": "application/x-www-form-urlencoded" },
                    content: datanya

                 }).then(function(response){
                    //console.log(JSON.stringify(response));
                    //console.log(response);

                    console.log('data diterima : '+response.content);
                    var jsondata = response.content.toJSON();
                    console.log('JSON Data hasil '+JSON.stringify(response.content));
                    loader.hide();
                    if(jsondata.hasil=='error'){
                        console.log('error '+jsondata.alasan);
                        Toast.makeText(jsondata.alasan, "long").show();
                    }else{
                        console.log('success : '+jsondata.alasan);
                        Toast.makeText(jsondata.alasan, "long").show();

                        //navigate
                        fm.topmost().navigate("otp/cek_daftar");
                        console.log('navigation passed');

                    }
                 },function(err){
                    //return error;
                    Toast.makeText('Error : '+err, "long").show();
                    console.log(err);
                 })

但它不适用于导航。从搜索我得到的信息http模块使用异步也许它不会使用同步导航。

由于

1 个答案:

答案 0 :(得分:0)

您可以在下载承诺处理程序中正常导航;我在我的一个项目中这样做;下载订单然后导航到订单屏幕。但是,它可能是一些事情:

  1. fm = .navigate('~/otp/cek_daftar');

  2. 在导航中,您尝试过console.log('data diterima : '+response.content);

  3. 您是否尝试在导航中设置Try / Catch以查看该页面导航的原因,您可能在该页面中有错误,因此失败...

  4. 您是否正在使用控制台:protomolecule