rsnext/examples/with-ioc
2019-05-28 16:06:13 -07:00
..
__tests__ Add prettier for examples directory (#5909) 2018-12-17 17:34:32 +01:00
components Run lint-fix 2019-05-28 16:06:13 -07:00
pages Run lint-fix 2019-05-28 16:06:13 -07:00
.babelrc Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
jest.config.js Fix FOUC issue on with-fela example (#7229) 2019-05-06 19:57:34 -05:00
jest.setup.js Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
package.json Test updater script on examples folder (#5993) 2019-01-05 12:19:27 +01:00
README.md Remove Deploy To Now buttons (#7126) 2019-04-24 10:53:58 +02:00
routes.js Add prettier for examples directory (#5909) 2018-12-17 17:34:32 +01:00
server.js Add prettier for examples directory (#5909) 2018-12-17 17:34:32 +01:00

Dependency Injection (IoC) example (ioc)

How to use

Using create-next-app

Execute create-next-app with Yarn or npx to bootstrap the example:

npx create-next-app --example with-ioc with-ioc-app
# or
yarn create next-app --example with-ioc with-ioc-app

Download manually

Download the example:

curl https://codeload.github.com/zeit/next.js/tar.gz/canary | tar -xz --strip=2 next.js-canary/examples/with-ioc
cd with-ioc

Install it and run:

npm install
npm run dev
# or
yarn
yarn dev

Deploy it to the cloud with now (download)

now

The idea behind the example

This example uses ioc for dependency injection, which lets you create decoupled shared components and keep them free from implementation details of your app / other components.

It builds on top of with-next-routes example and makes use of dependency injection to propagate custom Link component to other components.

Also, it illustrates ergonomics of testing using dependency injection.