• Vant React

Notify 消息提示

介绍

在页面顶部展示消息提示,支持函数调用和组件调用两种方式。

函数调用

版本 >= v0.6.0-alpha.0可以直接调用。低版本需要手动在页面(page)里挂载一个 Notify 组件并指定 id 为 notify

import { Cell, Notify } from "@taroify/core"

function ImperativeNotify() {
  return (
    <>
      {/* <Notify id="notify" /> */}
      <Cell title="函数调用" clickable isLink onClick={() => Notify.open("通知内容")} />
    </>
  )
}

组件调用

import { Cell, Notify } from "@taroify/core"

function BasicNotify() {
  const [open, setOpen] = useState(false)

  return (
    <>
      <Notify open={open} onClose={setOpen}>
        通知内容
      </Notify>
      <Cell title="基础用法" clickable onClick={() => setOpen(true)} />
    </>
  )
}

代码演示

基础用法

Notify.open("通知内容")
<Notify id="notify" open>
  通知内容
</Notify>

通知颜色

预设 primarysuccesswarningdanger 四种通知颜色,默认为 danger

Notify.open({ type: "primary", message: "通知内容" })
Notify.open({ type: "success", message: "通知内容" })
Notify.open({ type: "danger", message: "通知内容" })
Notify.open({ type: "warning", message: "通知内容" })
<Notify open type="primary">通知内容</Notify>
<Notify open type="success">通知内容</Notify>
<Notify open type="danger">通知内容</Notify>
<Notify open type="warning">通知内容</Notify>

自定义通知

自定义消息通知的颜色和展示时长。

Notify.open({
  color: "#ad0000",
  background: "#ffe1e1",
  message: "自定义颜色",
})
Notify.open({
  duration: 1000,
  message: "自定义时长",
})
<Notify open style={{ color: "#ad0000", background: "#ffe1e1" }}>自定义颜色</Notify>
<Notify open duration={1000}>自定义时长</Notify>

API

Props

参数说明类型默认值
className自定义类名string-
style组件样式CSSProperties-
defaultOpen默认是否显示消息提示boolean-
open是否显示消息提示boolean-
type类型,可选值为 primary success warningstringdanger
color v0.6.0-alpha.0字体颜色string-
background v0.6.0-alpha.0背景颜色string-
duration展示时长(ms),值为 0 时,notify 不会消失number3000
children展示文案,支持通过\n换行ReactNode-
onClose关闭时的回调函数(open : boolean) => void-

Options

参数说明类型默认值
selector自定义节点选择器stringnotify
className自定义类名string-
style组件样式CSSProperties-
color类型,可选值为 primary success warningstringdanger
duration展示时长(ms),值为 0 时,notify 不会消失number3000
message展示文案,支持通过\n换行ReactNode-
onClose关闭时的回调函数(open : boolean) => void-

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件。

名称默认值描述
—notify-colorvar(—white)-
—notify-paddingvar(—padding-xs) var(—padding-md)-
—notify-font-sizevar(—font-size-md)-
—notify-line-heightvar(—line-height-md)-
—notify-primary-background-colorvar(—primary-color)-
—notify-success-background-colorvar(—success-color)-
—notify-warning-background-colorvar(—warning-color)-
—notify-danger-background-colorvar(—danger-color)-