@gjzq/sdk
v1.7.0
Published
<div align="center"> <img src="https://devwebapps.yjbtest.com/yjbwebadviser/ai-adviser/dist/sdk.png" alt="logo" width="200" height="auto" /> <h1>@gjzq/sdk</h1> </div>
Downloads
268
Readme
npm install @gjzq/sdk
# or
yarn add @gjzq/sdk
#or
pnpm add @gjzq/sdk
#or
bun add @gjzq/sdk🚀 1. 全新架构设计,彻底解决历史遗留问题
针对旧版 SDK 存在的「循环依赖、难以 Tree-shake、包体过大」等问题,本版本从底层架构重新设计,实现模块完全解耦与能力分层,让整体更加稳定、易维护、可扩展。
📦 2. 按需加载 & Tree-shaking 全面支持
所有能力均实现模块化拆分,可通过 ESM Tree-shaking 自动剔除未使用代码。 实际项目中包体积可减少 30%–70%,页面首屏加载显著提速,移动端弱网体验大幅优化。
🧩 3. 模块职责清晰
将原来@sinolink/jssdk @sinolink/evolution @sinolink/login @sinolink/collect @sinolink/link @sinolink/jssdk @sinolink/http功能进行合并,各模块之间不再互相调用,避免循环引用黑箱链路与不可控的行为。
💡 4. 类型补全全面增强(TypeScript First)
所有模块均采用 TypeScript 开发,提供完整类型提示,更安全的接口返回类型,明确的错误类型与状态码,减少线上因类型不明确导致的 bug。
📘 5. 更友好的接入文档 & 示例
提供覆盖 90% 业务场景的调用示例,降低团队学习成本。
🔒 6. 向下兼容,平滑迁移
新版本在架构升级的同时保持对旧项目的兼容能力,并提供迁移指南,保证业务接入无痛升级。
🔄 导入方式变更对照表
由于先前evolution、jssdk、login等组件中存在同名函数,在新版sdk中对于部分冲突函数名进行重命名,未标注的其他方法名不变,只改引用包,例如:
import {getAppId} from '@sinolink/evolution';
// 变更为
import {getAppId} from '@gjzq/sdk';以下为变更接口的 旧版 → 新版 对照写法:
| 功能 | 旧版引用方式 | 新版引用方式 |
| ------- | ----------------------------------------------- | ---------------------------------------------- |
| HTTP 能力 | import http from '@sinolink/http' | import { http } from '@gjzq/sdk' |
| 打开客户端 | import { openApp } from '@sinolink/evolution' | import { openAppForWeb } from '@gjzq/sdk' |
| 退出登录 | import { logout } from '@sinolink/login' | import { logoutForWeb } from '@gjzq/sdk' |
| 检查登录态 | import { checkLogin } from '@sinolink/login' | import { checkLoginForWeb } from '@gjzq/sdk' |
| 开始登录流程 | import { beginLogin } from '@sinolink/login' | import { beginLoginForWeb } from '@gjzq/sdk' |
| 用户登录 | import { userLogin } from '@sinolink/login' | import { userLoginForWeb }from '@gjzq/sdk' |
注意事项
- 如果项目不需要自动初始化埋点,或者上报非佣金宝,比如开户项目,以及一些@sinolink的ui组件库,可以直接引用
@gjzq/sdk/pure - 如果项目不需要自动初始化但又引用@gjzq/sdk,可以在模版html中提前设置
_FINDER _COLLECTV2_INIT_设置为 false 或者 配置初始化配置_FINDER _COLLECTV2_CONFIG_字段 - 使用@gjzq/sdk/pure的时候如果报错types找不到,升级到typescript5以上,检查项目中tsconfig.json 的 "compilerOptions" 改成bundler或者node16
@gjzq/sdk与@gjzq/sdk/pure区别仅在于pure不含finder的自动初始化
License
Copyright (c) 2025-present, 佣金宝前端
