React.useRef 用于 ChakraUI Toast
React.useRef for ChakraUI Toast
根据脉轮文档中的以下示例代码,我无法确定我需要为 React.useRef() 提供什么类型:
function UpdatingToastExample() {
const toast = useToast()
const toastIdRef = React.useRef()
function update() {
if (toastIdRef.current) {
toast.update(toastIdRef.current, { description: "new text" })
}
}
function addToast() {
toastIdRef.current = toast({ description: "some text" })
}
return (
<Stack isInline spacing={2}>
<Button onClick={addToast} type="button">
Toast
</Button>
<Button onClick={update} type="button" variant="outline">
Update last toast
</Button>
</Stack>
)
}
发件人:https://chakra-ui.com/docs/feedback/toast#updating-toasts
Typescript 显然希望我为 React.useRef() 提供类型,但我不知道该提供什么?
const toastIdRef = React.useRef<WhatTypeShouldThisBe?>(null);
我正在使用 chakra-ui/react v1.6.7 和 typescript 4.2.4。
好像不是字符串就是数字:
const toastIdRef = React.useRef<number|string>(null);
看起来您可以导入 ToastId
类型:
export type ToastId = string | number
import { useToast, ToastId } from "@chakra-ui/toast";
...
const toastIdRef = React.useRef<ToastId>(null);
根据脉轮文档中的以下示例代码,我无法确定我需要为 React.useRef() 提供什么类型:
function UpdatingToastExample() {
const toast = useToast()
const toastIdRef = React.useRef()
function update() {
if (toastIdRef.current) {
toast.update(toastIdRef.current, { description: "new text" })
}
}
function addToast() {
toastIdRef.current = toast({ description: "some text" })
}
return (
<Stack isInline spacing={2}>
<Button onClick={addToast} type="button">
Toast
</Button>
<Button onClick={update} type="button" variant="outline">
Update last toast
</Button>
</Stack>
)
}
发件人:https://chakra-ui.com/docs/feedback/toast#updating-toasts
Typescript 显然希望我为 React.useRef() 提供类型,但我不知道该提供什么?
const toastIdRef = React.useRef<WhatTypeShouldThisBe?>(null);
我正在使用 chakra-ui/react v1.6.7 和 typescript 4.2.4。
好像不是字符串就是数字:
const toastIdRef = React.useRef<number|string>(null);
看起来您可以导入 ToastId
类型:
export type ToastId = string | number
import { useToast, ToastId } from "@chakra-ui/toast";
...
const toastIdRef = React.useRef<ToastId>(null);