JSFiddle - React, Tailwind, and code Playground
by Bhavin Surela
HTML
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<div class="col-md-12">
<div class="col-md-4">
<div id="get-posts"class="btn btn-default">Get Posts</div>
<div id="get-post" class="btn btn-default">Get Posts/1</div>
<div id="update-post" class="btn btn-default">Update Posts/1</div>
<div id="insert-post" class="btn btn-default">Create new</div>
</div>
<div class = "col-md-8">
<div id="title" class="title"></div>
<pre id="result" class="col-md-12 result pre"></pre>
</div>
</div>
CSS
#result{
border:1px solid #333;
}
JavaScript
var app = (function(app){
var _app={
api:{}
};
return _app;
}(app || {}));
var app =(function(app){
var _apiCaller = function(rootUrl){
this.root = rootUrl;
this.returnedObj=null;
this.setRoot = function(rootUrl){
this.root = rootUrl;
};
this.getBaseUrl=function(){
var pre = this.root;
var _url = this.url;
return pre+"/"+_url;
};
this.getReturnedObj=function(){
return this.returnedObj;
};
this.setReturnedObj = function(obj){
this.returnedObj = obj;
};
// url can be passed if we want to override the base url
this.save=function(options){
var _url = this.prepareCallUrl(options.url);
options.url =_url;
options.method="PUT"
return this.ajaxCall(options);
};
this.saveById = function(options){
var _url = "";
if(options.id !== null || options.id !== undefined || options.id !==""){
_url = this.getBaseUrl()+"/"+options.id;
}
_url = this.prepareCallUrl(_url);
options.url = _url;
options.method="PUT";
return this.ajaxCall(options);
};
this.insert=function(options){
var _url = this.prepareCallUrl(options.url);
options.url =_url;
options.method="POST"
return this.ajaxCall(options);
};
this.insertById = function(options){
var _url = "";
if(options.id !== null || options.id !== undefined || options.id !==""){
_url = this.getBaseUrl()+"/"+options.id;
}
_url = this.prepareCallUrl(_url);
options.url = _url;
options.method="POST";
return this.ajaxCall(options);
};
this.delete=function(url){
var _url = this.prepareCallUrl(options.url);
options.url =_url;
options.method="DELETE"
return this.ajaxCall(options);
};
this.deleteById = function(options){
var _url = "";
...