跳到内容
Yuva help hooks菜单

Yuva help hooks

React hooks over the useyuva headless client for the inbox's help center: the center with its collections and the best matches for the page, debounced article search that counts a submitted search, and one article with its Yes and No rating. Labels with English defaults.

Loading

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

    安装

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

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

    用法

    tsx
    import { useYuvaHelp, useYuvaHelpSearch } from "@/hooks/use-yuva-help"
    
    const help = useYuvaHelp({ server, channel })
    const { results } = useYuvaHelpSearch(help, query)

    Props

    UseYuvaHelpOptions

    Prop类型
    server?string
    channel?string
    client?YuvaClient
    identityToken?IdentityTokenSource | null
    locale?string
    page?string

    YuvaHelpState

    Prop类型
    clientYuvaClient | null
    localestring | undefined
    centerClientHelp | null
    loadingboolean
    errorunknown
    reload() => void
    apiHelp | null
    Prop类型
    resultsClientHelpSearchResults | null
    searchingboolean
    errorunknown
    searchedstring
    submit() => void

    YuvaHelpArticleState

    Prop类型
    articleClientHelpArticle | null
    loadingboolean
    errorunknown
    rating"up" | "down" | null
    rate(rating: "up" | "down", search?: string) => Promise<void>
    reload() => void

    标签

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

    标签默认值
    heading"Help center"
    searchLabel"Search for help"
    searchPlaceholder"Search for help"
    bestMatches"Best matches"
    popular"Popular articles"
    browse"Browse"
    noResults"No articles found."
    searching"Searching…"
    helpfulQuestion"Was this helpful?"
    yes"Yes"
    no"No"
    thanks"Thanks for your feedback"
    related"Related articles"
    back"Back"
    stillStuck"Still stuck?"
    askText"Ask the team, we read every message."
    messageUs"Message us"
    loadError"Could not load this."
    retry"Try again"
    loading"Loading…"
    articles(count) => `${count} ${count === 1 ? "article" : "articles"}`

    依赖

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

    npm 包