2016-04-29 6 views
1

Im neuen nativen zu reagieren und Service-Anrufe tätigen Im eine andere Datei ‚NetworkCalls.js‘ sagen zu schaffen, wird die Datei wie folgt:Wie erhalten Sie Ergebnisse in aufgerufene js von Serviceaufrufen js in reagieren native?

var NetworkCalls = { 

callUsingGETRequest: function(URL){ 
fetch(URL, {method: "GET"}) 
     .then((response) => response.json()) 
     .then((responseData) => { 
      return responseData.ip; 
     }) 
     .done(); 
} 
} 

Im jetzt diese Funktion aus index.ios.js Datei aufrufen

als
NetworkCalls.callUsingGETRequest(('http://ip.jsontest.com/'),(response) => { 
    console.log(response); 
}) 
} 

Import erfolgt, und auch im Empfang Antwort, aber das Ergebnis kam nie wieder in diesen Funktionsblock und es wird nie gedruckt.

Das mag keine Frage sein, aber wo ich falsch arbeite? Irgendwelche Vorschläge ?

Antwort

1

Sie können Promise von callUsingGETRequest

var NetworkCalls = { 
    callUsingGETRequest: function (URL) { 
    return fetch(URL, { method: "GET" }) 
     .then(response => response.json()) 
     .then(responseData => responseData.ip) 
    } 
} 

zurückkehren und dann verwenden, wie diese

NetworkCalls 
    .callUsingGETRequest('http://ip.jsontest.com/') 
    .then(ip => { 
    console.log(ip); 
    }); 
+0

Auch würde Ich mag es wissen, ob einige gute Dokumentation über Syntax wie diese zu verstehen ist. @Alexander – Rajesh

+1

@RSD gibt es doc auf MDN - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise, und über holen https://developer.mozilla.org/ de-DE/docs/Web/API/Fetch_API –

+0

Danke :) @Alexander – Rajesh