4 ms·
The next.js PI is beautifully simple. I completely agree with what you’re saying with regard to tradeoffs, but I’ve been remarkably impressed with the simplicit
by reilly3000 6y ago
The next.js PI is beautifully simple. I completely agree with what you’re saying with regard to tradeoffs, but I’ve been remarkably impressed with the simplicity of the NextJS api and it’s clear, concise documentation.
- Vinnl 6y agoWorking through their docs recently my first thought was: huh, I was under the impression that it would do more for me. But then I realised that it actually does do a lot for me, but they really managed to package it all up in a relatively (and deceptively) simple API that so far still does not seem leaky at all.
- simion314 6y agoUsually the leaky abstraction will appear later, I remember years ago I was implementing a react component and for some reason the focus was lost from an input when an update was happening. So eventually you are forced to understand what is happening and to apply workarounds. I have experienced a number of issues where some bug suddenly appears and until I read the source code of the abstraction I could not fix it(not only JS frameworks).
- Vinnl 6y agoSure, all the usual caveats for React and server- vs. client-side rendering still apply - but those aren't abstracted over.
- simion314 6y agoIt was a client side thing, I did not used recent version of React but at that time from my memory the abstraction was not perfect, you had the idea that you have some html then your render function generates some new html and react using magic updates the old with the new. What was missing is the focus is not html (probably the same for selection and other document properties) so you could have problems and you had to understand what is happening under the abstraction. From my experience though are bad abstraction that are not consistent, like we had a web project working untouched in 1 full year and some feature stopped working one day (nobody touched anything) but I could not reproduce it on my machine. I still have no idea what triggered it but the problem was that for some reason the PHP autoloader "searching" found a different file then before (maybe it was some caching/filesystem or other low level update on the VPS that triggered this)... anyway I had to read the code and understand how the magic happens so I can elucidate the bug.
- Vinnl 6y agoRight, my point was that that's a React abstraction, not a Next.js abstraction.