Whether it's Angular, Ember, Knockout, React, or whatever new library/framework has been pushed within the last week day minute second, you often come across a tutorial or getting-started example that leaves you thinking, "Hey, this could be a pretty fancy tool to use."
But while all these tools gain attention, a previously existing – and valuable – ecosystem of pure javascript or jquery-dependent plugins and widgets lurk in the background some of the promoters of the framework du juor ignore them or blissfully gloss over them with high-level integration instructions. It's all on you to try to integrate those plugins or make them on your own within the terms of the framework (especially how it handles the DOM), so have fun while you re-invent the wheel!
The more popular the framework, the more attempts people make to integrate existing tools. AngularUI is one of the more popular examples of such an effort.
One case where it seems to me the libraries/frameworks have not done so well as the existing widgets or integrated well with the existing widgets is the the DataTables table plug-in for jquery. I have yet to see a new framework do tables as powerfully and as feature-rich as DataTables does; this is significant, because most business-related applications are going to involve tables, tables larger than the 10 row, simplistic tables you see in a framework XYZ tutorial.
Then there are plugins/widgets that have received only a little open-source attention with an in-progress, incomplete integration, or else none at all. Given this situation, a few questions come to mind:
Is this concern valid? Is it worth it to buy into a framework but lose so much of the ecosystem and be forced to fit pieces of it into the framework?
What framework/library, in your experience, has the least amount of friction when attempting to integrate with existing widgets?
Does a different approach to building a rich client-side application exist (I don't mean a full-blown Single Page App) allowing you to use the widgets/plug-ins basically "as is", while still maintaining some structure and using js data-binding where possible?
Aucun commentaire:
Enregistrer un commentaire