I have reader mode permanently enabled for medium.com for Safari on iOS, and on Chrome for MacOS I have Ublock Origin rules to heavily filter out elements on the page.
I just wish CRA would give me a hook to touch the webpack configs. I'm willing to bite the pain of needing to rewrite my custom configs if they move to something else.
Simple example: with webpack it's trivial to configure it to load env-specific extensions. You can have foo.js, foo.dev.js, and foo.mock.js and it will import the correct one automatically based on an env variable. It's three lines of code that I use in all my React projects and it's honestly enough to keep me away from CRA.
The article covers the use-case of making small modifications to the build. react-app-rewired[1] and customize-cra[2] give you access to tweak the webpack build indirectly. While babel-macros[3] in CRA 2.X give you access to the babel transpilation step without having to eject. While it's not exactly what you're referring to, it does get you a little bit closer to the build.
Agreed. It's becoming harder and harder to justify managing your own React pipeline, even in the rare cases where something might be missing that I want included.
Can someone explain what ejection is? I'm not familiar with this terminology. How is it different from say, editing your package.json or webpack.mix.js files?
reace-create-app has predefined configs in packages which you can't edit unless you eject them (copy to your own project and update the links) but you won't get updates anymore.
CRA actually has almost nothing to do with React and a whole lot to do with other tools (Babel, ES6, Webpack, Jest). You don't need most of them to build a React application, it's mostly about developer experience and the surrounding ecosystem.
FWIW Angular does the same thing with Angular-CLI. The "problem" is the web dev ecosystem, not React itself.
ardfie|7 years ago
http://imgur.com/3gcROaQ
Medium is shockingly bad. I see absolutely no value in this service any more.
wilkystyle|7 years ago
ng12|7 years ago
Simple example: with webpack it's trivial to configure it to load env-specific extensions. You can have foo.js, foo.dev.js, and foo.mock.js and it will import the correct one automatically based on an env variable. It's three lines of code that I use in all my React projects and it's honestly enough to keep me away from CRA.
level|7 years ago
[1] https://github.com/timarney/react-app-rewired/
[2] https://github.com/arackaf/customize-cra
[3] https://babeljs.io/blog/2017/09/11/zero-config-with-babel-ma...
JustinBrown|7 years ago
hyfgfh|7 years ago
thallada|7 years ago
tbirrell|7 years ago
yellowsir|7 years ago
ojhughes|7 years ago
ng12|7 years ago
FWIW Angular does the same thing with Angular-CLI. The "problem" is the web dev ecosystem, not React itself.