Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import Axios from 'axios'
- import Mock from './mock'
- import Settings from './setting'
- class Product {
- url = ''
- config() {
- return {
- baseURL: this.url,
- timeout: 1000,
- headers: { 'X-Custom-Header': 'foobar' }
- }
- }
- post(path, payload) {
- if (Settings.domock) {
- return Mock.post(path, payload)
- }
- return Axios.post(path, payload, this.config())
- }
- get(path) {
- if (Settings.domock) {
- return Mock.get(path)
- }
- return Axios.get(path, this.config())
- }
- put(path){
- if (Settings.domock) {
- return Mock.get(path)
- }
- return Axios.put(path, this.config())
- }
- delete(path){
- if (Settings.domock) {
- return Mock.get(path)
- }
- return Axios.delete(path, this.config())
- }
- getProducts() {
- return new Promise((resolve, reject) => {
- this.get('/api/products').then((v) => {
- resolve(v)
- }).catch((v) => {
- reject(v)
- })
- })
- }
- postProduct(payload){
- return new Promise((resolve, reject)=>{
- this.post('/api/postProduct', payload).then((v) =>{
- resolve(v)
- }).catch((v) =>{
- reject(v)
- })
- })
- }
- putProduct(payload){
- return new Promise((resolve, reject)=>{
- this.put('/api/updateProduct', payload).then((v) =>{
- resolve(v)
- }).catch((v)=>{
- reject(v)
- })
- })
- }
- }
- export default Product
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement