Skip to content

mzaini30/olah-json

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Olah JSON

Versi Beta

Proyek ini terinspirasi dari typicode/json-server

Kalau JSON Server kan itu untuk sisi server. Maka, Olah JSON ini adalah dari sisi client

Install

Lalu, panggil dengan:

<script src='olahJson.js'></script>

Atau

<script src='olahJson.min.js'></script>

Struktur JSON

var data = {
  "santri": [
    {
      "id": 1,
      "nama": "Zen",
      "alamat": "Samarinda"
    },
    {
      "id": 2,
      "nama": "Yani",
      "alamat": "Samarinda"
    },
    {
      "id": 3,
      "nama": "Anggi",
      "alamat": "Samarinda"
    }
  ],
  "lomba": [
    {
      "id": 1,
      "lomba": "balap karung",
      "santri_id": 1
    }
  ]
}

Getting started (contohnya)

var data = {
  "santri": [
    {
      "id": 1,
      "nama": "Zen",
      "alamat": "Samarinda"
    },
    {
      "id": 3,
      "nama": "Yani",
      "alamat": "Samarinda"
    }
  ],
  "lomba": [
    {
      "id": 4,
      "lomba": "balap karung",
      "santri_id": 3
    }
  ]
}
var datanya = new OlahJson(data) // harus pakai new OlahJson()
var hasilOlahan = datanya.query('santri?nama=zen&alamat=samarinda').get() // pakai get() di paling akhir
console.log(hasilOlahan)

GET

data.query('santri').get()
data.query('santri/1').get()
data.query('santri?id=1').get()
data.query('santri?id=1&nama=zen').get()
data.query('santri/1?id=1').get()
data.query('santri/1?id=1&nama=zen').get()

DELETE

data.query('santri').delete().get()
data.query('santri/1').delete().get()

PUT

data.query('santri/10').put({
  'nama': 'Kucing',
  'alamat': 'Balikpapan'
}).get()

POST

data.query('santri').post({
  'nama': 'Rey',
  'alamat': 'Berau'
}).get()

Chain method

Mendukung chain method

Caranya, gunakan .query() kemudian post/put/delete, lalu di ujung semua itu, pakai get().

Contoh:

data.query('lomba').delete()
.query('santri/3').delete()
.query('santri/1').put({
  'nama': 'Yani',
  'alamat': 'Loa Bakung'
}).get()

Contoh lain:

data.query('santri').post({
  'nama': 'Rey',
  'alamat': 'Berau'
}).query('santri').post({
  'nama': 'Ari',
  'alamat': 'Kaltara'
}).query('lomba').post({
  'lomba': 'masukkan kelereng',
  'santri_id': 11
}).get()

TODO

  • Filter (Contoh: "santri?_q=aku")
  • GET
  • PUT
  • DELETE
  • POST
  • Chain method

Releases

No releases published

Sponsor this project

Packages

No packages published