Slide 1

Slide 1 text

React JS Code Splitting - Why and How?

Slide 2

Slide 2 text

bit.ly/react-delhincr

Slide 3

Slide 3 text

Speakers/Mentors Arun Michael Dsouza
 @amdsouza92 Kartik Agarwal
 @kartikag01

Slide 4

Slide 4 text

Why Code Splitting?

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

⚠ Performance

Slide 8

Slide 8 text

• Multiple HTTP requests to complete • Large payload to download • Site load speed becomes slow • Multiple files for the browser to process

Slide 9

Slide 9 text

hobo-web.co.uk (2018)

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

• Lesser HTTP requests to complete • Large payload to download • Site load speed improves • Lesser files for the browser to process

Slide 13

Slide 13 text

⚠ Shipping too much too soon!

Slide 14

Slide 14 text

washingtonpost.com

Slide 15

Slide 15 text

Every byte counts!

Slide 16

Slide 16 text

developers.google.com

Slide 17

Slide 17 text

What if we ship our JavaScript on demand?

Slide 18

Slide 18 text

/home vendor.js home.js /settings settings.js /messages messages.js /profile profile.js

Slide 19

Slide 19 text

• Limited HTTP requests to complete • Less payload to download • Site load speed improves drastically • Limited files for the browser to process

Slide 20

Slide 20 text

How Code Splitting Works?

Slide 21

Slide 21 text

Dynamic import

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

• Route-level Code-Splitting • Component-level Code-Splitting

Slide 24

Slide 24 text

github.com

Slide 25

Slide 25 text

Code Splitting Codelab

Slide 26

Slide 26 text

• Clone the repo • > git clone https://github.com/React-Delhi-NCR/workshop-02-react-js-code-splitting.git • Install dependencies • > npm install • Build project and start server • > npm start • This will start the project server on http://localhost:5000

Slide 27

Slide 27 text

• https://developers.google.com/web/fundamentals/performance/optimizing- javascript/code-splitting/ • https://webpack.js.org/guides/code-splitting/ • https://reactjs.org/docs/code-splitting.html • https://github.com/jamiebuilds/react-loadable • https://medium.com/front-end-weekly/webpack-and-dynamic-imports- doing-it-right-72549ff49234 • https://www.youtube.com/watch?v=0jB4YWgAxUo Further Reading

Slide 28

Slide 28 text

Thank you!