2.0.1 • Published 5 years ago
@mineko-io/reactioc v2.0.1
reactioc
Lightwight dependency injection framework for react. Using context and hooks.
Install
npm i -S @mineko-io/reactioc
Usage
Just stick your object to the provider. All siblings of that provider will have access to your object.
Provide value
import React, { FunctionComponent } from 'react';
import { ContainerProvider } from '@mineko-io/reactioc';
import Greetings from './Greetings';
import Greeter from './Greeter';
const myRegistry = {
Greeter,
};
interface Props {}
const Wrapper: FunctionComponent<Props> = () => (
<ContainerProvider value={myRegistry}>
<Greetings />
</ContainerProvider>
);
Get dependency
import React, { FunctionComponent } from 'react';
import { useContainer } from '@mineko-io/reactioc';
import Greeter from './Greeter';
const Greetings: FunctionComponent<Props> = () => {
const greeter = useContainer<typeof Greeter>('Greeter');
return (
<p>{greeter('FooBar')}</p>
);
};