successfully added a http request
This commit is contained in:
parent
d41142e99d
commit
a5e9cf334e
@ -1,4 +1,5 @@
|
||||
package components;
|
||||
import js.html.XMLHttpRequest;
|
||||
import react.ReactMacro.jsx;
|
||||
import react.ReactComponent;
|
||||
import js.Browser;
|
||||
@ -7,16 +8,70 @@ import react.router.ReactRouter;
|
||||
import react.router.Route.RouteRenderProps;
|
||||
import react.router.Route;
|
||||
import components.blog.Overview;
|
||||
import js.lib.Promise;
|
||||
|
||||
class HomeContent extends ReactComponent {
|
||||
|
||||
public function new(){
|
||||
super();
|
||||
state = { response: ["LOADING"], loaded: false }
|
||||
}
|
||||
static var STYLES = require('./HomeContent.css');
|
||||
|
||||
public function yeet(){
|
||||
trace(state);
|
||||
}
|
||||
|
||||
|
||||
//function sendRequest( image : Dynamic ) {
|
||||
function sendRequest() {
|
||||
|
||||
|
||||
return new js.lib.Promise(
|
||||
function( resolve : Dynamic -> Void, reject )
|
||||
{
|
||||
var request = new XMLHttpRequest();
|
||||
request.responseType = js.html.XMLHttpRequestResponseType.JSON;
|
||||
|
||||
request.onreadystatechange = function () {
|
||||
if (request.readyState == 4) {
|
||||
switch (request.status) {
|
||||
case 200:
|
||||
setState( { response: request.response } );
|
||||
trace(request.response);
|
||||
case 204:
|
||||
resolve(true);
|
||||
default:
|
||||
trace( "Wrong response status" );
|
||||
reject( request.response);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// var data = new js.html.FormData();
|
||||
// // If we had a real file, we could use `file.name` as third argument
|
||||
// data.append(props.formFieldName != null ? props.formFieldName : "file", image);
|
||||
request.open("GET", "https://baconipsum.com/api/?type=meat-and-filler");
|
||||
// request.send(data);
|
||||
request.send();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
override public function render() {
|
||||
//var _yeet = yayeet();
|
||||
var lorem = ["LOADING"];
|
||||
if(state.loaded){
|
||||
if(state.response != null)
|
||||
lorem = state.response;
|
||||
}
|
||||
else{
|
||||
setState({
|
||||
loaded: "false"
|
||||
});
|
||||
sendRequest();
|
||||
}
|
||||
return jsx('
|
||||
<div>
|
||||
<$Route exact="true" path={["/home","/home/about"]}>
|
||||
@ -29,7 +84,7 @@ class HomeContent extends ReactComponent {
|
||||
- Music<br/>
|
||||
- Art<br/>
|
||||
DRIVEBY! is run and operated by Hion-V. I am comitted to bringing you best-in-class entertainment and software.<br/>
|
||||
|
||||
${lorem[0]}<br/>
|
||||
</p>
|
||||
</div>
|
||||
</$Route>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user