2016-12-06 572 views
0

请帮我解决这个问题 我想转到另一帧后的HTTP模块完成其请求里面。代码如下:浏览HTTP模块nativescript

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模块使用异步也许它不会与导航使用同步。

谢谢

回答

0

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

  1. 是否FM = require ('ui/frame');

  2. 在你浏览你试过.navigate('~/otp/cek_daftar');

  3. 你有没有试图把一个try/catch周围的导航看为什么网页无法浏览过,你可能在该页面中的错误,所以它失败...

  4. 您是否获得了控制台:console.log('data diterima : '+response.content);