Skip to content

常见问题

插件已安装,租户看不到

检查顺序:

  1. 插件是否处于已安装、已启用状态。
  2. 插件是否授权到租户当前套餐。
  3. 套餐授权是否自动启用,或租户是否在插件中心手动启用。
  4. 租户生命周期是否为 trialactive
  5. 租户角色是否分配了插件菜单和按钮权限。
  6. 前端插件源码是否已同步和构建。

一级应用菜单没有出现

确认:

  • plugin.jsonkindapp
  • tenant.menus 不为空。
  • 菜单 component 指向正确的插件前端页面。
  • 安装时菜单同步成功。
  • 当前租户角色拥有该菜单权限。

插件 API 返回无权限

插件 API 会同时经过租户认证、生命周期、权益和 RBAC 校验。重点检查:

  • 请求 token 是否是租户 token。
  • 租户是否过期、冻结或禁用。
  • 插件是否在租户权益清单中。
  • 当前管理员角色是否具备权限 code。

插件页面构建失败

先手动同步插件前端:

bash
node scripts/sync-plugins.mjs --target tenant
node scripts/sync-plugins.mjs --target platform

然后分别进入 tenant/platform/ 执行类型检查和构建。

移动端页面没有打包

确认 manifest 声明了:

json
{
  "uniapp": {
    "subpackage": "modules/demo-shop",
    "pages": [
      { "path": "pages/product-list/index", "title": "商品列表" }
    ]
  }
}

同时确认 server/plugins/{code}/uniapp/ 目录存在,租户已拥有插件权益。

能不能只给某些租户开放插件

可以。推荐通过套餐授权控制基础范围,再通过租户单独购买或单独授权实现差异化。不要在插件业务代码中硬编码租户 ID。

插件卸载会删除业务数据吗

默认不会。卸载是软卸载,插件不可访问,但业务数据保留。需要彻底清理时,再执行插件清理流程,并确保已有数据库备份。

插件升级失败怎么办

先查看平台插件构建日志、后端运行日志和迁移错误。升级迁移应设计为可重复执行或安全失败。生产环境升级前应备份数据库和插件目录。

插件能扩展平台后台吗

可以通过 platformapi 路由和平台前端扩展实现,但建议谨慎使用。大多数业务插件应面向租户后台和 C 端,平台扩展只用于插件市场、全局配置、审计或运营级能力。

插件和普通模块怎么选择

如果能力只服务当前项目且不需要独立安装、授权、升级,可以做普通模块。如果能力需要作为独立商品、独立版本或按套餐售卖,应该做插件。

基于 Apache-2.0 协议开源