跳到内容
Yuva subscribe form菜单

Yuva subscribe form

A mailing list sign-up form: e-mail, optional name, a checkbox per list, an unticked consent box whose sentence is stored as shown, and a switch per list for signed-in users.

预览使用示例数据运行,不需要网络,也不需要渠道。

安装

在 shadcn 项目中运行。文件会复制到你自己的代码里。

Shell
npx shadcn@latest add https://useyuva.com/r/yuva-subscribe.json

用法

tsx
import { YuvaSubscribe } from "@/components/yuva-subscribe"

<YuvaSubscribe server={server} channel={channel} />

Props

YuvaSubscribeProps

Prop类型
server?string
channel?string
client?YuvaClient
identityToken?IdentityTokenSource | null
lists?string[]
layout?"stacked" | "inline"
name?"off" | "optional" | "required"
consent?string
privacyUrl?string
locale?string
labels?Partial<YuvaSubscribeLabels>
onSubscribe?(detail: { lists: string[]; confirmation: boolean }) => void
className?string

标签

每个标签都有英文默认值。传入部分 labels 对象即可修改或翻译。

标签默认值
lists"Lists"
email"E-mail address"
name"Your name"
nameOptional"Your name (optional)"
button"Subscribe"
sending"Subscribing…"
consent(lists, inbox) => `I want to receive e-mails about ${lists} from ${inbox}. I can unsubscribe at any time.`
privacy"Privacy policy"
checkInbox"Almost done. Check your inbox and confirm your subscription."
subscribed"Thanks! You are subscribed."
pending"Check your inbox to confirm."
chooseList"Choose at least one list."
invalidEmail"Enter a valid e-mail address."
nameRequired"Enter your name."
consentRequired"Tick the box to agree."
noEmail"Your account has no e-mail address yet."
rateLimited"Too many attempts. Wait a moment and try again."
offline"You seem to be offline."
generic"Could not subscribe. Try again."

依赖

安装此项时还会添加以下内容。

来自 shadcn/ui 的组件

其他 Yuva 项

npm 包