Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This is great! This will make bootstrap more attractive and competitive as a framework.

JQuery was one of the most important frameworks in Javascript history. It has enabled us to built real webapps. However since then differences between browsers shrunk significantly and we learned how to build maintainable and scalable apps in a more declarative fashion (hello React, Angular and friends)



I am still more fond of jQuery's ajax functionality than anything that followed, including the fetch API.


I've always liked to use axios which provides a jQuery-ish AJAX library. Works in the browser and server-side with NodeJS.

https://github.com/axios/axios

Much nicer to use than fetch IMHO


This.


Why? fetch returns a native promise, which are _much much much_ nicer to work with than XHR ever was or desired to be.

Good riddance.


Straightforward error handling both for actual http numbered errors, and for transport errors (site down/DNS/etc).


For one, fetch() doesn’t support progress reporting.


It does. The fetch response object exposes a `ReadableStream` through the `body` property, which you can loop through with a `for await ... of` loop. On each iteration, simply update your progress.



Yep, that’s a cute hack. Now what would be the equivalent of that for file upload? There’s no such API for fetch() because there’s no writeable body stream for requests. QED


I'm not particularly familiar with fetch, but does this do what you want? https://github.com/SitePen/javascript-streams-blog-examples/...


This is a hack that works only for downloads via streams. It won’t work e.g. for file uploads (unless you read the file into memory first, which is highly undesirable).


Missing .abort() on safari is one reason. https://caniuse.com/#feat=abortcontroller



jquery also returns a promise


I’d say that modern web patterns exist only because of jQuery. jQuery adapted the DOM and did for JS what LINQ did for C#. Replace datastore for DOM.

JavaScript itself has subsumed most of jQuery and replacements like lodash would not have existed without it.

Browsers will catch up badly.


fetch is very bleh, so that's not a high bar. What I'd love to see is more Observable-based offerings in that space... RxJS has some rudimentary client, but seeing that pushed further would be great.


You should look at `for await ... of`[1]. You can get a streaming reader from a `fetch` response and loop if through an async iterator. If you prefer the functional syntax observables, I'm sure you can find a library that wraps async iterators as observables.

[1]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...


It's not to get a stream so much as it is to get automatic aborts in mergeMaps and such. Amazing for things like auto-complete from an API as you type.


Whoosh!

Bootstrap is going the way of table layouts. Table layouts were great too but times change. Right now we have CSS Grid and it works in all browsers. I am sure they will bring this goodness to Bootstrap 5 but there is no need for the new layout engine that works great in all useful browsers to have a framework wrapper.

Similarly with the jQuery, it was once useful in a table layout kind of way but nowadays you might as well just write ES6 javascript rather than learn how to do things the special jQuery way. Frameworks are dead in a similar way to how the internal combustion engine is.

Using the intrinsic properties of the browser is where it is at in the same way that electric is where it is at in the automotive world. The fact that everyone is stuck with their excuses for frameworks (and ICE engines) does not change matters. Hence I read this news with all the enthusiasm of a Tesla owner reading about Peugeot developing a more efficient diesel engine.


Too bad html without styling still looks terrible and differently terrible in every browser. My company uses bootstrap heavily and we’ve never used the grid. Bootstrap gives you a great basis on which to build an interface that has all the little details taken care of, and it’s very easy to skin. I’ve worked on projects where people made their own ui component kits to be cool, and they ended up having a lot of holes and incomplete parts. So much work could have been saved by skinning bootstrap.

Note: you can substitute any well done component framework for bootstrap in the above statement.


>Bootstrap is going the way of table layouts. Table layouts were great too but times change. Right now we have CSS Grid and it works in all browsers.

Which is irrelevant, as Bootstrap is much more than a grid system.

Not to mention it's not meant for the types to mess with their own custom grid layout anyway.


Well I just checked to see if I missed anything with it and I didn't. The utilities and components are the same as I remember them being.

I was the biggest fan of Bootstrap ever about five or more years ago, a total evangelist. But it seems to be just another flavour of div soup really. I have moved on.

Even things like cool scrollspy things aren't worth the bloat or the learning requirement. I also prefer to learn real things rather than fake framework things. Now the tools are needed in modern browsers you might as well do it properly and learn something useful rather than follow some convenient hacks. It is quicker.


>Right now we have CSS Grid and it works in all browsers

Globally support seems to be at around 85%-87% [1], all browsers is misleading.

[1] https://caniuse.com/#feat=css-grid




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: