New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

@lancercomet/async-request

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@lancercomet/async-request

Make http requests by using axios in the @Decorator way.

latest
npmnpm
Version
0.1.0
Version published
Maintainers
1
Created
Source

@lancercomet/async-request

Make http requests by using axios in the @Decorator way.

Quick Start

import { Injectable } from '@vert/core'
import { asyncRequestFactory, IAsyncRequestResult } from '@lancercomet/async-request'
import { Account } from '../model'

const AsyncRequest = asyncRequestFactory()

@Injectable()
class UserService {
  @AsyncRequest({
    url: '/user/v1/data',
    onError (error) {
      this.toast.error('Failed to fetch user data, please try again.')
      this.logger.error('Failed to fetch user data:', error)
    }
  })
  async getUserData (data: { id: number }): Promise<IAsyncRequestResult<Account>> {
    return null
  }

  @AsyncRequest({
    url: '/user/v1/data',
    method: 'post',
    onSuccess (response) {
      this.toast.success('User data has been updated.')
    },
    onError (error) {
      this.toast.error('Failed to update user data, please try again.')
      this.logger.error('Failed to update user data:', error)
    }
  })
  async updateUserData (data: Account): Promise<IAsyncRequestResult<void>> {
    return null
  }

  constructor (
    private toast: Toast,
    private logger: Logger
  ) {
  }
}

export {
  UserService
}
import { AppComponent, Component } from '@vert/core'
import { UserService } from '../services'
import { Account } from '../model'

@Component
export default class UserPanel extends AppComponent {
  private inProcess: boolean = false
  private userData: Account = null

  private async getUserData (id: number) {
    this.inProcess = true
    const { data, error } = await this.userService.getUserData({ id })
    this.inProcess = false

    if (!error) {
      this.userData = data
    }
  }

  private async updateUserData () {
    this.inProcess = true
    await this.userService.updateUserData(this.userData)
    this.inProcess = false
  }

  mounted () {
    this.getUserData(this.$route.params.id)
  }

  constructor (
    private userService: UserService
  ) {
    super()
  }
}

API

To be added.

Please check index.d.ts for now.

FAQs

Package last updated on 09 Jan 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts