Skip to content

核心功能概览

uni-toolkit 提供了三大核心功能模块:拦截器、Hooks 和工具函数,以及环境检测功能,帮助开发者简化 uniapp 开发流程。

🛡️ 拦截器 (Interceptors)

拦截器是 uni-toolkit 的核心功能,通过拦截 uni-app 的原生 API,自动处理权限申请、错误处理和平台兼容性问题。

主要拦截器

拦截器功能描述适用场景
chooseImageInterceptor自动处理图片选择权限需要选择图片的场景
chooseLocationInterceptor增强位置选择功能需要获取用户位置的场景
makePhoneCallInterceptor增强拨打电话功能需要拨打电话的场景
routeInterceptor路由增强,支持白名单需要路由守卫的场景
setClipboardDataInterceptor剪贴板增强,提供兼容性处理需要复制到剪贴板的场景
setStorageInterceptor存储增强,支持加密和过期时间需要安全存储的场景

使用方式

typescript
import { chooseImageInterceptor } from "uni-toolkit/interceptors";

// 注册拦截器
uni.addInterceptor("chooseImage", chooseImageInterceptor);

🎣 Hooks

Hooks 是基于 Vue 3 Composition API 封装的常用功能,简化组件开发。

主要 Hooks

Hook功能描述适用场景
useChooseImage简化图片选择流程需要选择图片的组件
useDesignSize响应式设计尺寸处理需要响应式布局的组件
useOnShow页面显示生命周期处理需要在页面显示时执行操作的组件

使用方式

vue
<script setup>
import { useChooseImage } from "uni-toolkit/hooks";

const { chooseImage } = useChooseImage();

function handleChooseImage() {
  chooseImage({
    count: 1,
    success: (res) => {
      console.log("选择图片成功", res.tempFilePaths);
    }
  });
}
</script>

🛠️ 工具函数 (Tools)

工具函数提供了一系列实用的辅助功能,帮助开发者处理常见任务。

主要工具函数

分类函数功能描述
权限管理checkPermission检查权限状态
权限管理requestPermission请求权限
权限管理showPermissionDeniedDialog显示权限被拒对话框
环境检测isMpWeiXinWork检测是否为微信小程序企业版
工具函数deepClone高性能对象深拷贝

使用方式

typescript
import { checkPermission, requestPermission } from "uni-toolkit/tools";

// 检查权限
const hasPermission = await checkPermission("camera");
if (!hasPermission) {
  // 请求权限
  const granted = await requestPermission("camera");
}

🌍 环境检测 (Env)

环境检测功能提供了精确的平台和环境检测,帮助开发者实现差异化处理。

主要环境检测

检测项功能描述
isMpWeiXinWork检测是否为微信小程序企业版

使用方式

typescript
import { getPlatform, isMpWeiXinWork } from "uni-toolkit/env";

if (isMpWeiXinWork) {
  // 微信小程序特定逻辑
}

const platform = getPlatform();
console.log("当前平台:", platform);

🔄 工作流程

  1. 安装 uni-toolkit
  2. 导入 所需模块
  3. 注册 拦截器(可选)
  4. 使用 Hooks 和工具函数
  5. 处理 平台差异

📚 更多文档

基于 MIT 许可发布