Usage with actions example:
const sendSomeWay = console.log
function users (id) {
let usersList = [
{history: ['hunt the jerry'], messages: ['come here jerry'], name: 'Tom'},
{history: ['run way from tom'], messages: ['shure'], name: 'Jerry'}
]
return id >= 0? usersList[id] : usersList
}
let userId = {
'/history': (id) => {
sendSomeWay( users(id).history )
},
'/messages': (id) => {
sendSomeWay( users(id).messages )
},
'/': (id) => {
sendSomeWay( users(id) )
},
}
const config = {
"/api": {
"/user": {
"/:id": userId,
"/": users
}
}
}
const router = require('../index')
const app = router(config);
app({url : '/api/user/0/message'}, (result, newRequest) => {
const {id} = newRequest.params
result( parseInt(id) )
})
app({url : '/api/user/1/message'}, (result, newRequest) => {
const {id} = newRequest.params
result( parseInt(id) )
})
app({url : '/api/user/1'}, (result, newRequest) => {
const {id} = newRequest.params
result( parseInt(id) )
})