rest - Angular 2 lage modeller vs jobbe med json-objekter på farten?


når du samhandler med et REST API ved bruk av Angular 2. Er det verdt å lage TypeScript-klasser for hvert objekt (f.eks. ansatt, selskap, prosjekt, bruker ...)? Det andre alternativet er å hente JSON-objektet og jobbe med det direkte?

Svar #1

jeg foreslår å bruke modeller fordi:

  1. koden din vil være mer lesbar for deg selv etter en stund når du kommer tilbake for å endre den, alle andre kan også lett forstå hva du har gjort
  2. å gjøre endringer i prosjektet vil være lettere for eksempel har obj[0] ingen spesiell betydning, men obj['username'] er mer åpenbart
  3. du vil få IntelliSense i IDE-en din
  4. du kan legge logikk i modellen for eksempel slik at kontrolleren din blir tynnere

    name: string
    age: number
    
    sayInfo(): string {
      return `name is ${this.name} and age is ${this.age}`
    }
    

    Generelt vil det å administrere appen din være uten hodepine (eller i det minste mindre hodepine) :D

    bare husk at feite modeller tynne controllere

ikke glem at det å sende mer enn fem argumenter til en funksjon ikke er en god praksis, bruk heller et objekt, for eksempel:

constructor(file) {
  this.id = file['id']
  this.fileName = file['fileName']
  this.extention = file['extention']
  this.fileSize = file['fileSize']
  this.permission = file['permission']
  this.description = file['description']
  this.password = file['password']
  this.isFolder = file['isFolder']
  this.parent = file['parent']
  this.banStat = file['banStat']
  this.tinyLink = file['tinyLink']
  }
  getName(): string {
    return `${this.fileName}${(this.isFolder) ? '' : '.'}${this.extention}`
  }
  getIcon(): string {
    return this.isFolder ? 'fa-folder' : 'fa-music'
  }

Relaterte artikler