From 37aef35f993eafea3f221acd9aee080b25427cbe Mon Sep 17 00:00:00 2001 From: zhouyonggao <1971162852@qq.com> Date: Wed, 17 Dec 2025 10:02:07 +0800 Subject: [PATCH] =?UTF-8?q?refactor(modules):=20=E4=BD=BF=E7=94=A8IIFE?= =?UTF-8?q?=E5=8C=85=E8=A3=85=E6=A8=A1=E5=9D=97=E5=A2=9E=E5=BC=BA=E9=9A=94?= =?UTF-8?q?=E7=A6=BB=E5=92=8C=E5=AE=89=E5=85=A8=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在web主文件和所有模块文件中添加立即调用函数表达式(IIFE) - 对模块作用域使用'use strict'提高代码规范性和错误检测 - 提升模块代码的封装性,防止全局变量污染 - 维护现有模块接口和导出方式不变 - 优化代码结构,提升可读性和维护性 --- web/main.refactored.js | 5 +++++ web/modules/api.js | 5 +++++ web/modules/config.js | 5 +++++ web/modules/fields.js | 5 +++++ web/modules/state.js | 5 +++++ web/modules/utils.js | 5 +++++ 6 files changed, 30 insertions(+) diff --git a/web/main.refactored.js b/web/main.refactored.js index 7e31495..dc5e31a 100644 --- a/web/main.refactored.js +++ b/web/main.refactored.js @@ -3,6 +3,9 @@ * @description 使用模块化架构重构,提升可读性和扩展性 */ +;(function() { +'use strict'; + const { createApp, reactive } = Vue; // ==================== 模块引用 ==================== @@ -907,3 +910,5 @@ const app = createApp({ app.use(ElementPlus); app.mount('#app'); + +})(); diff --git a/web/modules/api.js b/web/modules/api.js index 633020f..d524e7d 100644 --- a/web/modules/api.js +++ b/web/modules/api.js @@ -3,6 +3,9 @@ * @module api */ +;(function() { +'use strict'; + /** * 获取 API 基础地址 * @returns {string} API 基础 URL @@ -427,3 +430,5 @@ window.ApiService = { fetchYmtMerchants, fetchYmtActivities }; + +})(); diff --git a/web/modules/config.js b/web/modules/config.js index 10340be..32a6293 100644 --- a/web/modules/config.js +++ b/web/modules/config.js @@ -3,6 +3,9 @@ * @module config */ +;(function() { +'use strict'; + // ==================== 系统常量 ==================== /** @@ -319,3 +322,5 @@ window.AppConfig = { // 默认值 getDefaultFields }; + +})(); diff --git a/web/modules/fields.js b/web/modules/fields.js index ec7a18b..82ecb21 100644 --- a/web/modules/fields.js +++ b/web/modules/fields.js @@ -3,6 +3,9 @@ * @module fields */ +;(function() { +'use strict'; + // 依赖:AppConfig /** @@ -460,3 +463,5 @@ window.FieldsModule = { TreeUtils, fieldsManager }; + +})(); diff --git a/web/modules/state.js b/web/modules/state.js index c193bb4..8b16bde 100644 --- a/web/modules/state.js +++ b/web/modules/state.js @@ -3,6 +3,9 @@ * @module state */ +;(function() { +'use strict'; + /** * 创建模板表单初始状态 * @param {string} [datasource='marketing'] - 数据源 @@ -261,3 +264,5 @@ window.StateModule = { resetExportForm, ValidationRules }; + +})(); diff --git a/web/modules/utils.js b/web/modules/utils.js index f0a83ba..70507d4 100644 --- a/web/modules/utils.js +++ b/web/modules/utils.js @@ -3,6 +3,9 @@ * @module utils */ +;(function() { +'use strict'; + /** * 显示消息提示 * @param {string} text - 消息内容 @@ -185,3 +188,5 @@ window.AppUtils = { debounce, throttle }; + +})();