Adding Alias to create-react-app
We’ll make this quick.
So you’ve got a Javascript project you bootstrapped with create-react-app, and
you’re at the point where ../../../components/myComponent is getting tedious.
While we can’t use plugins like babel-plugin-module-resolver to add aliases to
our project, we can use a jsconfig.json file placed at the root of our
directory to get a similar effect. We add a baseUrl option that
create-react-app respects thanks to a
change made in April
of 2019.
Assuming you’re project source lives in the src directory at the root of your
project, add this jsconfig.json right next to it.
{
"compilerOptions": {
"baseUrl": "src"
},
"include": ["src"]
}
So now your project root directory might look something like this.
.
├── Makefile
├── README.md
├── jsconfig.json
├── node_modules
├── package.json
├── public
├── src
└── yarn.lock
That’s the setup! Now you can import from your files without worrying about how many levels up or down you need to traverse the project to find your file!
import { MyComponent } from 'components/myComponent';
Happy days! 🎉