npm 包 react-toastr2 使用教程

React-toastr2 是一个基于 React 的轻量级通知提示库,可以用于向用户展示成功、错误、警告等信息。本文将介绍如何使用这个 npm 包,并给出相应的示例代码。

安装和引入

在项目根目录下执行以下命令:

--- ------- ------------- ------

在需要使用该库的文件中,引入 react-toastr2:

------ - --------------- ----- - ---- ----------------

其中 ToastContainer 是提示框容器,必须包含在 React 页面中,而 toast 是一个静态方法,用于向容器中添加新的提示框。

使用方法

成功提示

----------------------

以上代码将在界面上展示一个绿色的成功提示框,内容为“操作成功”。

错误提示

--------------------

以上代码将在界面上展示一个红色的错误提示框,内容为“操作失败”。

警告提示

------------------

以上代码将在界面上展示一个黄色的警告提示框,内容为“请注意”。

自定义提示

----- ------------------- - --------------------------------------------
-------------------------- --------------- --- -
  ----- --------
---

以上代码创建了一个自定义的提示框,内容为“自定义提示”。

参数配置

react-toastr2 提供了一些可配置参数,可以在创建容器时进行设置。

---------------
  ---------- -- - ------------------- - ---- --
  -----------------------------------------
  ---------------------------
  -----------
  -----------------
  -------------------
--
参数名 类型 默认值 说明
ref function 回调函数,用于获取容器的引用
toastMessageFactory function ToastMessage.animation 自定义提示框的工厂函数,使用时需传入一个由 React.createFactory 创建的组件
className string toast-top-right 容器的 CSS 类名,用于控制位置和样式
newestOnTop boolean false 控制新的提示框是否显示在最上面
preventDuplicates boolean true 是否防止重复提示,如果为 true,当相同内容的提示框已经存在时,不会重复出现
transition JSX Bounce 动画效果,使用时需传入一个与 react-css-transition-group 兼容的 JSX 组件,具体使用方法见官方文档
closeButton boolean false 是否显示关闭按钮
closeOnToastrClick boolean false 是否在点击提示框时关闭提示框
closeOnToastrHover boolean false 是否在鼠标悬停提示框时关闭提示框
progressBar boolean false 是否显示进度条,如果为 true,将在提示框底部添加一个进度条,表示该提示框在几秒后自动关闭
timeOut number 5000 自动关闭时间,单位为毫秒
extendedTimeOut number 1000 在用户鼠标悬停提示框时,提示框最多还能存在的毫秒数
enableMultiContainer boolean false 是否允许多个容器存在
targetId string 指定容器的唯一 ID,仅当 enableMultiContainertrue 时生效
toastOptions object 具体配置项参见下面的章节
preventOpenDuplicate boolean false 如果为 true,当重复调用 toast 方法时,不会弹出新的提示框,而是更新已有的提示框的状态,仅适用于成功和警告提示

toastOptions 参数

toastOptions 参数用于自定义提示框的样式和行为,其具体配置项如下:

参数名 类型 默认值 说明
closeButton boolean false 是否显示关闭按钮
iconClassName string toast-${options.type}-icon 自定义图标的 CSS 类名,其中 options.type 表示提示框的类型
iconClassNames object { error: "toast-error-icon", info: "toast-info-icon", success: "toast-success-icon", warning: "toast-warning-icon" } 不同类型的提示框分别对应的图标样式类
onOpen func 当提示框打开时执行的回调函数,函数参数 signature: (...args: any[]) => void,其中 args 包含了调用 toast 方法时传入的所有额外参数
onRemove func 当提示框被移除时执行的回调函数,函数参数 signature: (...args: any[]) => void,其中 args 包含了调用 toast 方法时传入的所有额外参数
onCloseClick func 当点击提示框的关闭按钮时执行的回调函数,函数参数 signature: (...args: any[]) => void,其中 args 包含了调用 toast 方法时传入的所有额外参数
progressBar bool false 是否显示进度条,如果为 true,将在提示框底部添加一个进度条,表示该提示框在几秒后自动关闭
showCloseButton bool false 是否显示关闭按钮
timeOut number 5000 自动关闭时间,单位为毫秒
transitionIn string bounceIn 提示框进入时的动画效果,可选值包括 fadeIn, bounceIn, flipInX 等,参见 react-bulma-notify
transitionOut string bounceOut 提示框离开时的动画效果,可选值包括 fadeOut, bounceOut, flipOutX 等,参见 react-bulma-notify
type string info 提示框的类型,可选值包括 info, success, error, warning,分别表示信息提示、成功提示、错误提示和警告提示,也可以自定义一个与其它框架兼容的类型

示例代码

下面是一个完整的示例代码:

------ ------ - --------- - ---- --------
------ - --------------- ----- - ---- ----------------

----- --- ------- --------- -
  --------------- -
    ---------------------- ---------------
  -

  ------------- -
    ------------------ ---------------
  -

  --------------- -
    ------------------- ---------------
  -

  -------------- -
    ----- ------------------- - --------------------------------------------
    -------------------------- --------------- ------------- --- -
      ----- --------
    ---
  -

  -------- -
    ------ -
      -----
        ------- ------------------------------------ ---------------------
        ------- -------------------------------- ---------------------
        ------- ------------------------------------ ---------------------
        ------- ---------------------------------- ---------------------
        --------------- --
      ------
    --
  -
-

------ ------- ----

以上代码定义了四个按钮,分别用于显示不同类型和自定义内容的提示框。在渲染时,需要将 <ToastContainer> 包含在页面中。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60055eaa81e8991b448dc17d


猜你喜欢

  • npm 包 generator-koa-ssr-vue 使用教程

    前言 generator-koa-ssr-vue 是一个帮助开发者快速构建基于 Vue.js 的服务器端渲染应用的 npm 包。此包同时也包含了一个 Koa.js 服务器端渲染的脚手架,方便开发者能够...

    2 年前
  • NPM包statestes使用教程

    简介 Statestes是一个NPM包,它提供了一种在React项目中管理状态的新方法。使用Statestes,您可以轻松地创建可重用的状态容器,并将其嵌入您的React组件。

    2 年前
  • npm包vm.alloy-override使用教程

    概要 vm.alloy-override是一个npm包,可用于实现前端中的钩子功能。它提供了一种方法,让开发者可以在某些函数执行前或执行后,自行定义一些操作,以实现个性化的需求。

    2 年前
  • npm 包 bootstrap-autohide-navbar 使用教程

    什么是 bootstrap-autohide-navbar bootstrap-autohide-navbar 是一个基于 Bootstrap 的 jQuery 插件,它可以自动隐藏和显示导航条,以提...

    2 年前
  • npm 包 electron-rebuild-ln 使用教程

    在开发 Electron 应用程序时,我们常常需要使用一些 Node.js 模块。但是,由于 Electron 和普通的 Node.js 环境存在一些差异,有些 Node.js 模块在 Electro...

    2 年前
  • NPM 包 Errors.js 使用教程

    介绍 Errors.js 是一个轻量级的 JavaScript 库,它提供了一系列常见的错误类型,使得编写 JavaScript 应用程序时更加方便。该库还提供了一种简单的方法来创建自定义错误类型。

    2 年前
  • npm 包 eslint-config-payscale-es6 使用教程

    当我们在写前端代码时,我们不可避免地会遇到代码风格不统一、语法错误等问题。为了解决这些问题,我们可以使用 eslint 工具,它能够帮我们检测代码质量及风格,并给出相应的提示和建议,从而提高代码质量和...

    2 年前
  • npm 包 input-check 使用教程

    概述 在前端开发中,我们经常需要对用户输入的内容进行校验,以确保数据的有效性和安全性。而 npm 包 input-check 就是一款方便易用的工具,可以快速实现输入校验的功能。

    2 年前
  • npm 包 grunt-copy-replace 使用教程

    在前端开发过程中,我们经常需要复制和替换文件,例如将某个文件夹下的某类文件复制到另一个文件夹下并进行某些替换操作。这时候,我们可以使用一个非常实用的 npm 包 grunt-copy-replace。

    2 年前
  • npm 包 @activelylearn/react-treebeard 使用教程

    前言 在前端开发中,我们经常需要使用一些 UI 组件来构建应用。而现在,开源社区中存在着许多优秀的 UI 组件,如 React、Vue 等,这些组件使得前端开发变得更加高效和便捷。

    2 年前
  • npm 包 cloud_disk_icon 使用教程

    前言 在前端开发中,图标是非常重要的,可以让网站变得更加美观和易读。而 cloud_disk_icon 是一个非常实用的 npm 包,它提供了许多漂亮且易于使用的云盘图标,让你的网站看起来更专业和现代...

    2 年前
  • npm 包 native-kde-file-open 使用教程

    简介 native-kde-file-open 是一个基于 Node.js 的 npm 包,可以用于在 KDE 桌面环境下使用本地的文件打开程序来打开文件。本文将介绍如何使用该包,以及一些相关的技术知...

    2 年前
  • npm 包 mydatepicker-custom-ver 使用教程

    前言 在前端开发中,处理日期时间是非常常见的需求,但是原生的日期选择控件样式不够美观、交互体验不够友好,因此选择一个好用的日期选择插件尤为重要。本文将介绍 mydatepicker-custom-ve...

    2 年前
  • npm 包 queri 使用教程

    Queri 是一个前端开发常用的 JavaScript 库,它提供了一种方便的方式来查询和操作 DOM 元素。它支持 jQuery 语法,并且拥有更快的性能和更小的体积。

    2 年前
  • npm 包 chrome-remote-interface-flowtype 使用教程

    概述 在前端开发中,我们通常需要使用 Chrome DevTools 来进行调试和分析。而 npm 包 chrome-remote-interface-flowtype 提供了一种通过 Node.js...

    2 年前
  • npm 包 hexo-caniuse 使用教程

    前言 作为前端开发者,时常需要关注浏览器的兼容性问题。但是,了解每个属性或方法在不同浏览器上的兼容情况是一个不小的挑战。不过,我们可以使用 caniuse 这个工具来解决这个问题。

    2 年前
  • npm 包 react-native-kdqq 使用教程

    React Native 是一种流行的跨平台移动应用开发框架。它允许开发人员使用 JavaScript 和 React 来构建原生移动应用程序。在 React Native 中,可以使用 npm 包来...

    2 年前
  • npm 包 retext-ibmstyleguide 使用教程

    在前端开发中,代码风格的一致性和规范性是非常重要的,这不仅能提高代码的可读性和可维护性,也能增强项目的整体协作效率。因此,在代码编写过程中,使用工具自动化格式化代码便成为了一项必要的操作。

    2 年前
  • npm 包 capp-cache 使用教程

    capp-cache 是一个基于 Node.js 的缓存库,它提供了简单易用且高效的 API,使得开发者可以在应用程序中快速实现数据的缓存。本文将介绍 capp-cache 的基本用法,并带领读者实现...

    2 年前
  • npm 包 md-convert-json 使用教程

    简介 md-convert-json 是一个将 Markdown 格式转化为 JSON 格式的 npm 包,使用该包可以方便地将 Markdown 格式的文档转化为各种格式的文档。

    2 年前

相关推荐

    暂无文章