当前位置: 首页 > 知识库问答 >
问题:

vue3如何组织代码,让代码更清晰易读?

贝德辉
2023-04-21

虽然vue3能够把相关的代码写在一起,但是感觉所有代码都在同一层级,除了增加换行、增加region折叠外,寻找起代码来还是很痛苦,尤其是并不是总能清晰地按相关度分隔。请教各位大佬,你们是如何做的?

共有2个答案

郗河
2023-04-21

一般来说就是把相关的功能维护在一起,就是下面这张图那样:

另外就是超过 600行Vue 组件都可以继续往下拆分:

  • 可以是单纯的拆分业务代码为单个的JS文件;
  • 也可以是继续拆分成子组件,让组件职能尽量单一。

这样虽然会造成一定负担,具体得看你的取舍。

潘修为
2023-04-21

用组合式函数,也就是 hook

抽取组合式函数不仅是为了复用,也是为了代码组织。随着组件复杂度的增高,你可能会最终发现组件多得难以查询和理解。组合式 API 会给予你足够的灵活性,让你可以基于逻辑问题将组件代码拆分成更小的函数:
<script setup>
import { useFeatureA } from './featureA.js'
import { useFeatureB } from './featureB.js'
import { useFeatureC } from './featureC.js'

const { foo, bar } = useFeatureA()
const { baz } = useFeatureB(foo)
const { qux } = useFeatureC(baz)
</script>
在某种程度上,你可以将这些提取出的组合式函数看作是可以相互通信的组件范围内的服务。
https://cn.vuejs.org/guide/reusability/composables.html#extra...
 类似资料:
  • 代码组织 待更新……

  • 来自 Mattt Thompson code organization is a matter of hygiene (代码组织是卫生问题) 我们十分赞成这句话。清晰地组织代码和规范地进行定义, 是你对自己以及其他阅读代码的人的尊重。

  • 利用代码块 一个 GCC 非常模糊的特性,以及 Clang 也有的特性是,代码块如果在闭合的圆括号内的话,会返回最后语句的值 NSURL *url = ({ NSString *urlString = [NSString stringWithFormat:@"%@/%@", baseURLString, endpoint]; [NSURL URLWithString:urlStri

  • Pragma Pragma Mark #pragma mark - 是一个在类内部组织代码并且帮助你分组方法实现的好办法。 我们建议使用 #pragma mark - 来分离: 不同功能组的方法 protocols 的实现 对父类方法的重写 - (void)dealloc { /* ... */ } - (instancetype)init { /* ... */ } #pragma mark -

  • android-webview-dev@chromium.org Last updated Jul 2014. Android build tree中,external/chromium_org是chromium源代码(根目录位于src.chromium.org/viewvc/chrome/trunk/src/)的一个镜像。 CHROMIUM TREE (“upstream”: trunk/src

  • 注释 当它需要的时候,注释应该用来解释特定的代码做了什么。所有的注释必须被持续维护或者干脆就删掉。 块注释应该被避免,代码本身应该尽可能就像文档一样表示意图,只需要很少的打断注释。 例外: 这不能适用于用来产生文档的注释 头文档 一个类的文档应该只在 .h 文件里用 Doxygen/AppleDoc 的语法书写。 方法和属性都应该提供文档。 例子: /** * Designated initi