Skip to content

paynegreen/nuxt-devless

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Nuxt-Devless

A DevLess backend connector for NuxtJS (https://nuxtjs.org)

Connect your Nuxt app to the DevLess backend to store data.

Requirments

  1. Axios Module - @nuxtjs/axios

Installation

  1. Download or clone the devless.js lib into the plugins directory of your nuxt application
  2. Open nuxt.config.js and include the lib in the plugin section. Read more on how to add plugins here
  3. Install the Nuxt Axios Module @nuxtjs/axios
  4. Add axios config to the nuxt.config.js. Recommend to proxy all requests.
axios: {
  proxy: true,
  https: true,
  retry: {
    retries: 3
  }
},
proxy: {
  '/api/v1/': {
    target: 'https://kpela.herokuapp.com/',
    changeOrigin: true
  }
}
  1. Login into your DevLess instance, head to the App section to grab the instance details to config the nuxt app (nuxt.config.js) Add the details to devless under the env key. Read more
env: {
  devless: {
    proxy: true, // When set to `true` would use the proxy url for all requests(ssr) but `false` would use the absolute path for the DevLess instance
    host: 'YOUR_DEVLESS_URL',
    'devless-token': 'YOUR_DEVLESS_TOKEN',
  }
}
  1. Restart the dev server

Usage

Refer to JS Library for more options

  1. Query Data
this.$devless.queryData('service_name', 'table_name', extras_params)
  .then(res => console.log(res))
  .catch(e => console.log(e))

The extras_params can be ignored if not available. 2. Add Data

let data = {
  name: 'Tsatsu'
}
this.$devless.addData('service_name', 'table_name', data)
  .then(res => console.log(res))
  .catch(e => console.log(e))
  1. Update Data
let data = {
  name: 'Tsatsu'
}
this.$devless.updateData('service_name', 'table_name', 'identifier', 'value', data)
  .then(res => console.log(res))
  .catch(e => console.log(e))
  1. Delete Data
this.$devless.updateData('service_name', 'table_name', 'identifier', 'value')
  .then(res => console.log(res))
  .catch(e => console.log(e))
  1. Method Calls
let params = []
this.$devless.call('service_name', 'method_name', params)
  .then(res => console.log(res))
  .catch(e => console.log(e))

params can be ignored if not available 6. Login

let payload = {
  email: '[email protected]'
  password: '******'
}
this.$devless.login(payload)
  .then(res => console.log(res))
  .catch(e => console.log(e))
  1. Register
let payload = {
  first_name: 'John',
  last_name: 'Doe',
  phone_number: '233201234567',
  email: '[email protected]'
  password: '******'
}
this.$devless.register(payload)
  .then(res => console.log(res))
  .catch(e => console.log(e))
  1. Logout
let token = 'LOGGED_IN_USER_TOKEN'
this.$devless.logout(token)
  .then(res => console.log(res))
  .catch(e => console.log(e))

Contribution

Submit PRs. Test & Improvements needed.

E-mail: [email protected]