File tree Expand file tree Collapse file tree 3 files changed +19
-13
lines changed Expand file tree Collapse file tree 3 files changed +19
-13
lines changed Original file line number Diff line number Diff line change 1111
1212var path = require ( 'path' ) ;
1313
14- // We support resolving modules according to NODE_PATH.
14+ // We support resolving modules according to ` NODE_PATH` .
1515// This lets you use absolute paths in imports inside large monorepos:
1616// https://github.com/facebookincubator/create-react-app/issues/253.
17- // It works just like NODE_PATH in Node:
17+
18+ // It works similar to `NODE_PATH` in Node itself:
1819// https://nodejs.org/api/modules.html#modules_loading_from_the_global_folders
20+
1921// We will export `nodePaths` as an array of absolute paths.
20- // It will then be used by Webpack (and potentially other tools).
22+ // It will then be used by Webpack configs.
23+ // Jest doesn’t need this because it already handles `NODE_PATH` out of the box.
24+
2125var nodePaths = ( process . env . NODE_PATH || '' )
2226 . split ( process . platform === 'win32' ? ';' : ':' )
2327 . filter ( Boolean )
Original file line number Diff line number Diff line change @@ -68,11 +68,12 @@ module.exports = {
6868 publicPath : '/'
6969 } ,
7070 resolve : {
71- // This allows you to set a root for where Webpack should look for modules.
72- // It must be an absolute path or an array of absolute paths.
73- // This lets you use absolute paths in imports inside large monorepos:
74- // https://github.com/facebookincubator/create-react-app/issues/253.
75- root : paths . nodePaths ,
71+ // This allows you to set a fallback for where Webpack should look for modules.
72+ // We read `NODE_PATH` environment variable in `paths.js` and pass paths here.
73+ // We use `fallback` instead of `root` because we want `node_modules` to "win"
74+ // if there any conflicts. This matches Node resolution mechanism.
75+ // https://github.com/facebookincubator/create-react-app/issues/253
76+ fallback : paths . nodePaths ,
7677 // These are the reasonable defaults supported by the Node ecosystem.
7778 extensions : [ '.js' , '.json' , '' ] ,
7879 alias : {
Original file line number Diff line number Diff line change @@ -63,11 +63,12 @@ module.exports = {
6363 publicPath : publicPath
6464 } ,
6565 resolve : {
66- // This allows you to set a root for where Webpack should look for modules.
67- // It must be an absolute path or an array of absolute paths.
68- // This lets you use absolute paths in imports inside large monorepos:
69- // https://github.com/facebookincubator/create-react-app/issues/253.
70- root : paths . nodePaths ,
66+ // This allows you to set a fallback for where Webpack should look for modules.
67+ // We read `NODE_PATH` environment variable in `paths.js` and pass paths here.
68+ // We use `fallback` instead of `root` because we want `node_modules` to "win"
69+ // if there any conflicts. This matches Node resolution mechanism.
70+ // https://github.com/facebookincubator/create-react-app/issues/253
71+ fallback : paths . nodePaths ,
7172 // These are the reasonable defaults supported by the Node ecosystem.
7273 extensions : [ '.js' , '.json' , '' ] ,
7374 alias : {
You can’t perform that action at this time.
0 commit comments