JSPM

@loopback/context

4.0.0-alpha.13
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 39966
  • Score
    100M100P100Q144747F
  • License MIT

LoopBack's container for Inversion of Control

Package Exports

  • @loopback/context

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@loopback/context) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@loopback/context

LoopBack uses Context to manage state and dependencies in your application.

Overview

LoopBack implements the concept of a Context to represent a global registry in your application to manage config, state, dependencies, classes, etc. Context also serves as an IoC container used to inject dependencies into your code.

Installation

$ npm install --save @loopback/context

Basic use

// app level
const app = new Application(); // `app` is a "Context"
app.bind('hello').to('world'); // ContextKey='hello', ContextValue='world'
console.log(app.getSync('hello')); // => 'world'

Dependency injection using context

const Application = require('@loopback/core');
const app = new Application();
app.bind('defaultName').to('John'); // setting context

class HelloController {
  // consider this.ctx here
  constructor(@inject('defaultName') name) { // injecting dependency using context
    this.name = name;
  }
  greet(name) {
    return `Hello ${name || this.name}`;
  }
}

For additional information, please refer to the wiki.

Contributions

IBM/StrongLoop is an active supporter of open source and welcomes contributions to our projects as well as those of the Node.js community in general. For more information on how to contribute please refer to the Contribution Guide.

Tests

Run npm test from the root folder.

Contributors

See all contributors.

License

MIT