Pure Admin 保姆级文档
  • 介绍
  • 快速开始
  • 目录结构
  • vscode文件夹详解
  • 平台配置
  • 布局
  • 路由和菜单
  • http请求
  • 打包和部署
  • 进阶

    • 图标
    • 主题和暗黑模式
    • 国际化
    • Tailwind CSS
    • RBAC权限
    • 类型声明
    • 单点登录
    • 自定义免登录
    • 打包优化
    • vite预构建
  • 生态

    • 对接平台的前后端项目
    • 函数工具库
    • 组件库
    • vite插件
  • 其他

    • 赞助
    • 常见问题
    • 非平台问题跟踪记录
    • git常用命令
    • 技术网站推荐
  • 赞助
    • 后端项目
    • 哔哩哔哩 (opens new window)
  • 日志

    • Github日志 (opens new window)
    • Gitee日志 (opens new window)
  • 预览

    • 完整版 (opens new window)
    • 精简版 (opens new window)
    • max版 (opens new window)
    • utils文档 (opens new window)
  • Github源码

    • 完整版 (opens new window)
    • 精简版 (opens new window)
    • Tauri版 (opens new window)
    • Electron版 (opens new window)
    • 配套后端 (opens new window)
    • 文档 (opens new window)
    • utils文档 (opens new window)
  • Gitee源码

    • 完整版 (opens new window)
    • 精简版 (opens new window)
    • Tauri版 (opens new window)
    • Electron版 (opens new window)
    • 配套后端 (opens new window)
    • 文档 (opens new window)
    • utils文档 (opens new window)
后端
高级服务
@pureadmin/utils文档 📕 平台快速开发教程 📺 平台页面、功能演示 📺 迁移JS版本教程 📺
  • 介绍
  • 快速开始
  • 目录结构
  • vscode文件夹详解
  • 平台配置
  • 布局
  • 路由和菜单
  • http请求
  • 打包和部署
  • 进阶

    • 图标
    • 主题和暗黑模式
    • 国际化
    • Tailwind CSS
    • RBAC权限
    • 类型声明
    • 单点登录
    • 自定义免登录
    • 打包优化
    • vite预构建
  • 生态

    • 对接平台的前后端项目
    • 函数工具库
    • 组件库
    • vite插件
  • 其他

    • 赞助
    • 常见问题
    • 非平台问题跟踪记录
    • git常用命令
    • 技术网站推荐
  • 赞助
    • 后端项目
    • 哔哩哔哩 (opens new window)
  • 日志

    • Github日志 (opens new window)
    • Gitee日志 (opens new window)
  • 预览

    • 完整版 (opens new window)
    • 精简版 (opens new window)
    • max版 (opens new window)
    • utils文档 (opens new window)
  • Github源码

    • 完整版 (opens new window)
    • 精简版 (opens new window)
    • Tauri版 (opens new window)
    • Electron版 (opens new window)
    • 配套后端 (opens new window)
    • 文档 (opens new window)
    • utils文档 (opens new window)
  • Gitee源码

    • 完整版 (opens new window)
    • 精简版 (opens new window)
    • Tauri版 (opens new window)
    • Electron版 (opens new window)
    • 配套后端 (opens new window)
    • 文档 (opens new window)
    • utils文档 (opens new window)
后端
高级服务
  • 指南

    • 介绍
    • 快速开始
    • 目录结构
    • .vscode文件夹详解
    • 平台配置
    • 布局
    • 路由和菜单
    • http请求
    • 打包和部署
  • 进阶

    • 图标(有新的更新)
    • 主题和暗黑模式
    • 国际化
    • Tailwind CSS(有新的更新)
    • RBAC权限
    • 类型声明
      • 全局类型声明
      • types/shims-tsx.d.ts
      • types/shims-vue.d.ts
      • 全局导入的组件如何获取类型提示
        • 从 npm 下载的组件库或者第三方库
        • 平台内自定义的全局组件
    • 单点登录
    • 自定义免登录
    • 打包优化
    • vite预构建
  • 生态

    • 对接平台的前后端项目
    • 函数工具库
    • 组件库
    • vite插件
  • 其他

    • 赞助
    • 常见问题
    • 非平台问题跟踪记录
    • git常用命令
    • 技术网站推荐
Max-Js 版本 Max-Ts 版本
目录

类型声明

TypeScript (opens new window)作为 JavaScript 的超集,拥有强大的类型提示给我们的开发带来了极大的便利,尤其体现在团队合作开发中

# 全局类型声明

在 global.d.ts (opens new window) 和 index.d.ts (opens new window) 文件中编写的类型可直接在 .ts、.tsx、.vue 中使用

img

# types/shims-tsx.d.ts

该文件是为了给 .tsx 文件提供类型支持,在编写时能正确识别语法

# types/shims-vue.d.ts

.vue、.scss 文件不是常规的文件类型,typescript 无法识别,所以我们需要通过下图的代码告诉 typescript 这些文件的类型,防止类型报错

img

项目开发,我们可能需要安装一些库或者插件什么的,当它们对 typescript 支持不是很友好的时候,就会出现下图的情况

img

解决办法就是将这些通过 declare module "包名" 的形式添加到 types/shims-vue.d.ts (opens new window) 中去,如下图

img

# 全局导入的组件如何获取类型提示

# 从 npm (opens new window) 下载的组件库或者第三方库

也就是您使用 pnpm add 添加的包,比如 @pureadmin/table (opens new window),我们只需要将这个包提供的全局类声明文件导入到 tsconfig.json (opens new window) 的 types 配置项,然后重启编辑器即可,如下图导入前和导入后的效果对比

导入前,pure-table 无高亮且鼠标覆盖无类型提示

img

导入后,pure-table 高亮且鼠标覆盖有类型提示

img

提示

当然这个导入前提是这个组件库或者第三方库是有导出全局类声明文件的。具体参考 pure-admin-table (opens new window)

# 平台内自定义的全局组件

拿平台封装的 Auth (opens new window) 组件举例

① 我们将 Auth 组件在 main.ts (opens new window) 中进行了全局注册

② 然后将 Auth 组件在 global-components.d (opens new window) 中引入,所有的全局组件都应该在 GlobalComponents 下引入才可获得类型支持,如下图

img

③ 最后我们直接写 <Auth>xxx</Auth> 就可以得到类型提示啦,如下图

img

上次更新: 2025/05/30, 06:18:16
RBAC权限
单点登录

← RBAC权限 单点登录→

最近更新
更多文章>
starsstars18.1k18.1k
forksforks3.4k3.4k
Theme by Vdoing | Copyright © 2020-2025 pure-admin | MIT License