1
0
Fork 0
mirror of https://github.com/terribleplan/next.js.git synced 2024-01-19 02:48:18 +00:00
next.js/examples/with-ioc
James Hegedus b1d8b839dd Examples: use npx and yarn create to run create-next-app on examples (#4002)
* remove global npm install of create-next-app

* add npx to create-next-app command in examples

* add bash to shell snippets

* add yarn create to next-app command in examples

* fix READMEs named with lowercase

* change READMEs to use UPPERCASE
2018-03-14 09:09:46 +01:00
..
__tests__ Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
components Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
pages Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
.babelrc Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
jest.config.js Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
jest.setup.js Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
package.json Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
README.md Examples: use npx and yarn create to run create-next-app on examples (#4002) 2018-03-14 09:09:46 +01:00
routes.js Added IoC example (#3595) 2018-01-31 08:36:20 +01:00
server.js Added IoC example (#3595) 2018-01-31 08:36:20 +01:00

Deploy to now

Dependency Injection (IoC) example (ioc)

How to use

Using create-next-app

Download create-next-app 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 or clone the repo:

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

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.