LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

模块化和组件化的区别

zhenglin
2026年3月3日 10:3 本文热度 129

1. 模块化:代码层面的 “零件拆分”

模块化是把单一功能的代码从整体中抽离成独立文件,核心是 “功能解耦”,关注 “代码怎么写”。

  • 比如:

    • 把日期格式化函数封装成 date-utils.js 模块

    • 把接口请求逻辑封装成 api/user.js 模块

    • 把通用样式变量封装成 variables.scss 模块
  • 示例代码(JS 模块化):

// 模块化:utils/date.js(纯功能逻辑)

export function formatDate(date) {

  return new Intl.DateTimeFormat('zh-CN').format(new Date(date));

}


// 其他文件中引入使用

import { formatDate } from './utils/date.js';

console.log(formatDate('2026-03-02')); // 2026/3/2


2. 组件化:界面层面的 “积木拼装”

组件化是把可独立复用的 UI 单元封装成独立模块,核心是 “UI 解耦”,关注 “界面怎么拼”。一个组件通常包含:模板(HTML)+ 逻辑(JS)+ 样式(CSS),是 “完整的功能单元”。

  • 比如:

    • Vue 中的 Button.vue 组件(包含按钮的样式、点击逻辑、显示文本)

    • React 中的 Card.jsx 组件(包含卡片布局、内容渲染、交互事件)
  • 示例代码(Vue 组件化):


<!-- 组件化:components/Button.vue(UI+逻辑+样式) -->

<template>

  <button class="my-btn" @click="handleClick">{{ text }}</button>

</template>


<script>

// 引入模块化的工具函数(组件化依赖模块化)

import { log } from '../utils/logger.js';


export default {

  props: {

    text: { type: String, default: '按钮' }

  },

  methods: {

    handleClick() {

      log('按钮被点击');

      this.$emit('click');

    }

  }

};

</script>


<style scoped>

.my-btn {

  padding: 8px 16px;

  border: none;

  background: #007bff;

  color: white;

}

</style>

3、两者的关联

  • 组件化依赖模块化:一个组件内部会拆分多个模块(比如引入工具函数模块、接口请求模块);

  • ​模块化是组件化的基础:先有代码层面的模块化拆分,才能更好地构建高内聚的组件;

  • 最终目标一致:都是为了降低耦合、提高复用性、便于维护,只是关注的层面不同。


总结:

  1. 模块化聚焦功能逻辑的拆分,是 “代码级” 的复用,解决 “代码怎么组织” 的问题;

  2. 组件化聚焦UI 单元的封装,是 “界面级” 的复用,解决 “页面怎么拼装” 的问题;

  3. 组件化是模块化思想在 UI 层的具体落地,模块化的范围更广,组件化是模块化的一种特殊形式(UI 模块)。


参考文章:原文链接


该文章在 2026/3/3 10:03:53 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved