@alicloud/console-base-error-prompt

中文文档
1.12.0发布于 2026/10/29MITTypeScriptESM + CJS近 30 天下载 2249

ConsoleBase 错误弹窗器

原始使用文档
文档目录4 节
  1. 使用
  2. 一般用法
  3. 自定义标题、按钮
  4. 如何忽略错误

@alicloud/console-base-error-prompt

TODO see in action

@alicloud/error-prompt 的进化版,不再依赖 wind 和 fusion,也不需要手动引样式和指定语言,更不再是一个工厂。

使用

一般用法

import errorPrompt from '@alicloud/console-base-error-prompt';

errorPrompt(error/*, extra*/);

error 可以是以下类型:

  • undefined | null 将被忽略
  • 字符串
  • JSX
  • plain 对象
  • 扩展了的 Error 实例对象

如果 error 是对象,除了标准属性 message 之外,可以附加 code、requestId,同时可以有 details 属性,长这样:

interface IErrorDetails {
  url?: string;
  method?: string;
  params?: string | Record<string, unkonwn>;
  body?: string | Record<string, unkonwn>;
}

自定义标题、按钮

有的时候,会根据 code 可能需要调整 title 和 button。

errorPrompt(error, {
  button,
  title
});

// 或
errorPrompt(error, ({ // 这里是解析后的对象,保证存在,但不保证有 code
  code
}) => {
  if (code === 'ConsoleNeedLogin') {
    return {
      title: '你妹登录 - 需要国际化',
      button: {
        href: '/',
        target: '_blank',
        label: '登录 - 需要国际化'
      }
    };
  }
});

如何忽略错误

所谓「忽略」错误,是指虽然被接收,但不会弹窗。

虽然可以用 null | undefined,是的,在 JS 中 null | undefined 是可以被当成错误的存在,但这并不是推荐的做法。

这种场景下,可以利用帮助方法 createErrorToIgnore throw 一个新错误,这个错误一定会被忽略。

import {
  createErrorToIgnore
} from '@alicloud/console-base-error-prompt';

try {
  doMyStuff();
} catch (err) {
  // 可以忽略该错误,或错误在业务层已经被处理
  if (canIgnoreError(err)) {
    throw createErrorToIgnore();
  }
}

版本与发布记录

@alicloud/console-base-error-prompt 共发布 220 个版本,首次发布于 2020/12/01;过去 12 个月发布了 10 个版本。

版本发布日期距今
1.12.0latest2026/10/299 天前
1.12.0-beta.8beta2026/10/299 天前
1.12.0-beta.72026/10/299 天前
1.12.0-beta.62026/10/299 天前
1.12.0-beta.52026/10/2810 天前
1.12.0-beta.42026/10/2711 天前

其他发布通道:alpha → 1.11.8-alpha.0,beta → 1.12.0-beta.8。

关于 @alicloud/console-base-error-prompt 的常见问题

@alicloud/console-base-error-prompt 是什么?

ConsoleBase 错误弹窗器

如何安装 @alicloud/console-base-error-prompt?

在项目目录运行 npm install @alicloud/console-base-error-prompt,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(>=16.8)、styled-components(>=5)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@alicloud/console-base-error-prompt 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@alicloud/console-base-error-prompt 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@alicloud/console-base-error-prompt 可以商用吗?

@alicloud/console-base-error-prompt 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@alicloud/console-base-error-prompt 的下载量有多少?

根据 npm 官方下载统计,@alicloud/console-base-error-prompt 在 2026/10/06 – 2026/11/04 这 30 天内被下载 2,249 次,日均约 75 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@alicloud/console-base-error-prompt 还在维护吗?

最新版本 1.12.0 发布于 2026/10/29(9 天前);至今共发布 220 个版本,其中过去 12 个月发布了 10 个;首次发布于 2020/12/01。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。