Note even if you don't like the idea of Single-File Components, you can still leverage its hot-reloading and pre-compilation features by separating your JavaScript and CSS into separate files using Src Imports. Inside a component, its template, logic, and styles are inherently coupled, and colocating them actually makes the component more cohesive and maintainable. In modern UI development, we have found that instead of dividing the codebase into three huge layers that interweave with one another, it makes much more sense to divide them into loosely-coupled components and compose them. Separation of concerns, when applied dogmatically as separation of file types, does not help us reach that goal in the context of increasingly complex frontend applications. The ultimate goal of engineering principles is to improve the maintainability of codebases. And, to correlate with our illustrative React App, we will choose here React for the frontend, Node.js for the back-end, and PostgreSQL for the database. To answer this question, it is important for us to agree that separation of concerns is not equal to the separation of file types. In this step, you will need to choose the frontend, backend, and database stack of your app. Some users coming from a traditional web development background may have the concern that SFCs are mixing different concerns in the same place - which HTML/CSS/JS were supposed to separate! Check out more details in the SFC Tooling section. In actual projects, we typically integrate the SFC compiler with a build tool such as Vite or Vue CLI (which is based on webpack), and Vue provides official scaffolding tools to get you started with SFCs as fast as possible. You can play with SFCs and explore how they are compiled in the Vue SFC Playground. For production they can be extracted and merged into a single CSS file. tags inside SFCs are typically injected as native tags during development to support hot updates.
0 Comments
Leave a Reply. |