I'd like to use react.min.js
from a CDN in production (e.g. https://unpkg.com/[email protected]/dist/react.min.js)
What is the best way to get Webpack to transform my import React from 'react'
statements into const React = window.React
instead of building node_modules/react
into the bundle?
I've been doing it with resolve.alias
like this:
In index.html
:
<head>
<script type="text/javascript" src="https://unpkg.com/[email protected]/dist/react.min.js"></script>
<script type="text/javascript" src="/assets/bundle.js"></script>
</head>
In webpack.prod.config.js
:
alias: {
react$: './getWindowReact',
},
getWindowReact.js
:
module.exports = window.React;
Note: In the old question I didn't realize that building React into a Webpack bundle with NODE_ENV=production
would strip out the propTypes
checks. One of the answers focuses on that.