Dependency Injection

Other topics

Remarks:

If injecting more than one class, the order you put them in the @inject() statement does not matter. However, the order they appear in the @inject() statement must match the order of the parameters in the constructor.

Get and Display Username by Id

import {User} from 'backend/user'; // import custom class
import {inject} from 'aurelia-framework'; // allows us to inject

@inject(User) // inject custom class
export class ProfileView {
  constructor(user) { // use instance of custom class as a parameter to the constructor
    this.user = user; // save instance as a an instance variable
    this.username = '';
  }

  activate(params) {
    // call function from custom class, then save the result as another instance variable
    return this.user.getUsernameById(param.user_id)
      .then(user => this.username = user.username);
  }
}

Contributors

Topic Id: 7879

Example Ids: 25601

This site is not affiliated with any of the contributors.