https://github.com/mzaini30/olah-json
JSON library untuk client side
https://github.com/mzaini30/olah-json
client-side js json json-server
Last synced: 2 months ago
JSON representation
JSON library untuk client side
- Host: GitHub
- URL: https://github.com/mzaini30/olah-json
- Owner: mzaini30
- Created: 2020-04-07T07:39:47.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2020-04-11T07:07:15.000Z (about 6 years ago)
- Last Synced: 2025-03-23T22:45:48.425Z (over 1 year ago)
- Topics: client-side, js, json, json-server
- Language: HTML
- Size: 84 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# Olah JSON
> Versi Beta
Proyek ini terinspirasi dari [typicode/json-server](https://github.com/typicode/json-server)
Kalau JSON Server kan itu untuk sisi server. Maka, Olah JSON ini adalah dari sisi client
## Install
- [For development](olahJson.js) - masih pakai ES2015+
- [For production](olahJson.min.js) - sudah diolah pakai Babel dan minify dengan Uglify JS
Lalu, panggil dengan:
```html
```
Atau
```html
```
## Struktur JSON
```javascript
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)
```javascript
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
```javascript
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
```javascript
data.query('santri').delete().get()
data.query('santri/1').delete().get()
```
## PUT
```javascript
data.query('santri/10').put({
'nama': 'Kucing',
'alamat': 'Balikpapan'
}).get()
```
## POST
```javascript
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:
```javascript
data.query('lomba').delete()
.query('santri/3').delete()
.query('santri/1').put({
'nama': 'Yani',
'alamat': 'Loa Bakung'
}).get()
```
Contoh lain:
```javascript
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")
- [x] GET
- [x] PUT
- [x] DELETE
- [x] POST
- [x] Chain method