react-context-injector

0.0.2 • Public • Published

React Context Injector

Plain Dependency Injector as Context for React inspired by this post

npm version Circle CI license

Installation

React Content Injector works with React >= v15.0.

$ npm install --save react react-context-injector
import createContextInjector from 'react-context-injector';
 
const ContextInjector = createContextInjector({ ... });

Example

import createContextInjector from 'react-context-injector';
import React from 'react';
import ReactDOM from 'react-dom';
import SomeComponent from './SomeComponent';
 
const ContextInjector = createContextInjector({
  fooService: {
    doSomething: () => 'World!',
  },
});
 
ReactDOM.render(
  <ContextInjector>
    <SomeComponent>
      Hello,
    </SomeComponent>
  </ContextInjector>
);
SomeComponent.js
const SomeComponent = (props, context) => {
  const someResult = context.fooService.doSomething();
 
  return (
    <div>
      {props.children} {someResult}
    </div>
  );
};
 
SomeComponent.contextTypes = {
  barService: React.PropTypes.any,
};

Usage

createContextInjector(diContainer: object): ReactClass

Create <ContextInjector> with diContainer. Child elements of <ContextInjector> can access to some member of diContainer as context. It works like as the Dependency injection.

See example.

License

MIT

Dependencies (0)

    Dev Dependencies (10)

    Package Sidebar

    Install

    npm i react-context-injector

    Weekly Downloads

    0

    Version

    0.0.2

    License

    MIT

    Last publish

    Collaborators

    • axross