Advertisement
Guest User

Untitled

a guest
Aug 20th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import Axios from 'axios'
  2. import Mock from './mock'
  3. import Settings from './setting'
  4.  
  5.  
  6. class Product {
  7.     url = ''
  8.  
  9.     config() {
  10.         return {
  11.             baseURL: this.url,
  12.             timeout: 1000,
  13.             headers: { 'X-Custom-Header': 'foobar' }
  14.         }
  15.     }
  16.  
  17.     post(path, payload) {
  18.         if (Settings.domock) {
  19.             return Mock.post(path, payload)
  20.         }
  21.         return Axios.post(path, payload, this.config())
  22.     }
  23.  
  24.     get(path) {
  25.         if (Settings.domock) {
  26.             return Mock.get(path)
  27.         }
  28.         return Axios.get(path, this.config())
  29.     }
  30.  
  31.     put(path){
  32.         if (Settings.domock) {
  33.             return Mock.get(path)
  34.         }
  35.         return Axios.put(path, this.config())
  36.     }
  37.  
  38.     delete(path){
  39.         if (Settings.domock) {
  40.             return Mock.get(path)
  41.         }
  42.         return Axios.delete(path, this.config())
  43.     }
  44.  
  45.     getProducts() {
  46.         return new Promise((resolve, reject) => {
  47.             this.get('/api/products').then((v) => {
  48.                 resolve(v)
  49.             }).catch((v) => {
  50.                 reject(v)
  51.                
  52.             })
  53.         })      
  54.     }
  55.  
  56.     postProduct(payload){
  57.         return new Promise((resolve, reject)=>{
  58.             this.post('/api/postProduct', payload).then((v) =>{
  59.                 resolve(v)
  60.             }).catch((v) =>{
  61.                 reject(v)
  62.             })
  63.         })
  64.     }
  65.  
  66.     putProduct(payload){
  67.         return new Promise((resolve, reject)=>{
  68.             this.put('/api/updateProduct', payload).then((v) =>{
  69.                 resolve(v)
  70.             }).catch((v)=>{
  71.                 reject(v)
  72.             })
  73.         })
  74.     }
  75.  
  76.  
  77. }
  78.  
  79. export default Product
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement