npm.io
0.0.13 • Published 7 years ago

why-did-you-update-immutable

Licence
MIT
Version
0.0.13
Deps
3
Size
2.6 MB
Vulns
2
Weekly
0
Stars
4.9K

Why did you update, bruh?

Travis npm version

Wat?

A function that monkey patches React and notifies you in the console when potentially unnecessary re-renders occur. Super helpful for easy perf gainzzzzz.

How to

import React from 'react'

if (process.env.NODE_ENV !== 'production') {
  const {whyDidYouUpdate} = require('why-did-you-update')
  whyDidYouUpdate(React)
}

You can include or exclude components by their displayName with the include and exclude options

whyDidYouUpdate(React, { include: /^pure/, exclude: /^Connect/ })
Credit

I originally read about how Benchling created a mixin to do this on a per component basis (A deep dive into React perf debugging). That is really awesome but also tedious AF, so why not just monkey patch React.

Keywords