VuePress 1.0 is released! Simply put, it is a static website generator based on Vue. The core of Vue is component development.
Now, all mainstream JavaScript frameworks adopt a componentized pattern. Even if there are differences in some details (such as Svelte needs to be compiled), they all agree with the componentized development model. React is entirely based on components, Next.js is a popular React static website generator; Vue's corresponding version is Nuxt.js.
Gatsby is also a static website generator based on React (see our latest ShopTalk Show show). In the Vue ecosystem, Gridsome is most similar to it, both of which can obtain data from various data sources. Of course, they are also based on components. I'm not sure if there are flagship-grade static website generators based on Angular, but they do exist, and Angular also implements the concept of component development.
Components are so common that you may have become accustomed to them. But if you switch between component-driven projects and non-component-driven projects, you may feel the difference. For example, WordPress development is usually not component driven. Of course, you have files like header.php and footer.php, and you can split them as you like, but this is a more temporary approach. You are not explicitly building components, providing local data to those components, and testing them. (It's closer to this using a tool like Timber).
It is completely feasible to build a front-end using server-side code, and server-side rendering has many advantages. However, the server-side language does not seem to embrace componentization like JavaScript. Since everyone seems to like components (front-end developers obviously like it, designers are used to this mindset, and back-end developers understand it…), I'm not surprised to see these highly favored projects build server-side (or build-time) websites using JavaScript, simply because it's based on components, and components are a good idea.
Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.
Copyright© 2022 湘ICP备2022001581号-3