@zgcos/micro-app
v1.0.1
Published
ZGCOS micro-app utility library
Downloads
179
Maintainers
Readme
@zgcos/micro-app
ZGCOS micro-app utility library
Installation
npm install @zgcos/micro-app
# or
pnpm add @zgcos/micro-app
# or
yarn add @zgcos/micro-appUsage
import { configUtils } from "@zgcos/micro-app";
// 初始化开发环境配置
// 从 rawWindow 中获取 SITE_CONFIG 配置和 _logoutHandle
configUtils.initDev();
// 挂载 rawWindow 上的指定属性/方法到 window
configUtils.mountGlobals(["SITE_CONFIG", "_logoutHandle"]);
// 解绑指定的全局属性/方法
configUtils.unMountGlobals(["_logoutHandle"]);默认导出方式
import microApp from "@zgcos/micro-app";
microApp.configUtils.initDev();
microApp.configUtils.mountGlobals(["SITE_CONFIG"]);
microApp.configUtils.unMountGlobals(["SITE_CONFIG"]);API
configUtils.initDev()
初始化开发环境配置。从 rawWindow 中获取 SITE_CONFIG 配置并合并到当前 window.SITE_CONFIG,同时复制 _logoutHandle 方法。
功能说明:
- 从
window.rawWindow.SITE_CONFIG获取配置并合并到window.SITE_CONFIG - 复制
window.rawWindow._logoutHandle到window._logoutHandle - 如果出现跨域限制或其他错误,会在控制台输出警告信息
示例:
import { configUtils } from "@zgcos/micro-app";
// 在应用启动时调用
configUtils.initDev();
// 之后可以使用 window.SITE_CONFIG 和 window._logoutHandle
console.log(window.SITE_CONFIG);
window._logoutHandle?.();configUtils.mountGlobals(keys: string[])
将 rawWindow 上指定的属性/方法挂载到当前 window。
参数:
keys: 需要挂载的属性名数组
行为:
rawWindow不存在时会直接警告并跳过- 属性存在则挂载;不存在则警告;异常会单独警告
configUtils.unMountGlobals(keys: string[])
将当前 window 上指定的属性/方法卸载(删除)。
参数:
keys: 需要卸载的属性名数组
行为:
- 属性存在则删除;不存在则警告;异常会单独警告
类型声明
该库扩展了全局 Window 接口,添加了以下类型:
window.rawWindow: 原始窗口对象,可能包含SITE_CONFIG和_logoutHandlewindow.SITE_CONFIG: 站点配置对象window._logoutHandle: 登出处理函数
注意事项
- 如果
rawWindow不存在或无法访问(可能由于跨域限制),方法会静默失败并输出警告 - 配置合并采用对象展开语法,
rawWindow.SITE_CONFIG的配置会覆盖现有的window.SITE_CONFIG配置
