DEV Community

Discussion on: Introducing the SolidJS UI Library

Collapse
 
yellow1912 profile image
yellow1912

How does it work with legacy apps? The beauty of vuejs is that it can work nicely with apps that have html separated and generated by the server code and also support loading dynamic html to certain extent. When we moved from angularjs 1.x, vuejs was the only option with that kind of support.

Collapse
 
ryansolid profile image
Ryan Carniato • Edited

I mean Vue does make that easy so it broadcasts it as a use case but any modern library is up to the task as you can set the entry point. You can have a statically rendered site in PHP and then have React control 5 independent parts of the page by importing the bundle and calling render after page load on those 5 locations. The reason I imagine we don't hear people talking about this is the build process. Vue lets you just import a script tag and start writing some components. Solid's Tagged Template literals allow you to skip the build process as well.

Here's a quick codepen of Solid with no compiler running completely in the browser. codepen.io/ryansolid/pen/KKprxBN.

Although I built Solid with modern browsers in mind. So without polyfills it is not supporting Internet Explorer. Obviously it's pretty easy to make a build with that in mind it just hasn't been a priority. Certain features like proxies are not easily polyfilled so they would not work in that environment anyway.

Collapse
 
hasnaindev profile image
Muhammad Hasnain

Vue is very unique and its ability to integrate with external HTML is why I love it. No other framework provides such capability.

Collapse
 
ryansolid profile image
Ryan Carniato

Yeah it's a hold out from the old days. KnockoutJS used to do that too with it's HTML string data-binding. AlpineJS and Stimulus do this sort of manipulation as well but only Vue of the modern frameworks offer both this ability and the modern built template setup. One of the benefits from still prescribing to data-binding that is completely HTML compliant.