我开始学习VueJS,我意识到典型的.vue
文件由三个不同的部分组成,分别是<template>
、<script>
和<style>
。
我的问题是关于在VueJs的真实专业项目中如何处理这三个部分。根据我的理解,应该将它们分离成三个不同的部分。
例如,我会倾向于将它们分开放在以下文件夹中:
在src
文件夹下,我会创建以下子文件夹:
src ->script(JavaScript函数将在这里定义) index.js ->style(样式内容将在这里定义) index.css ->pages(模板内容将在这里定义) index.vue
在真实的中大型VueJS项目中是这样处理的吗?如果不是,为什么?这种方法的优缺点是什么?
提前感谢您的回答!
最好的问候,
保罗
好的提示,关于阅读文档。我没有找到它。根据https://vuejs.org/guide/scaling-up/sfc.html#what-about-separation-of-concerns:
一些来自传统网页开发背景的用户可能担心,SFC在同一个地方混合了不同的关注点 - 这是HTML/CSS/JS本应该分离的!
为了回答这个问题,我们需要达成一致的观点,关注点的分离并不等同于文件类型的分离。工程原则的最终目标是提高代码库的可维护性。将关注点的分离死板地应用为文件类型的分离,并不能帮助我们在日益复杂的前端应用环境中实现这个目标。
在现代UI开发中,我们发现,将代码库划分为三个相互交织的巨大层级,与其相比,将其划分为松耦合的组件并进行组合更加合理。在一个组件内部,其模板、逻辑和样式是内在耦合的,而将它们放在一起实际上使得组件更加内聚和可维护。
即使你不喜欢单文件组件的想法,你仍然可以通过将JavaScript和CSS分开使用Src Imports将其热重载和预编译功能应用到你的项目中。