chat-builder

0.17.2 • Public • Published

Конфигурация

Переход на следующую страницу

Переход к следующей странице задаётся с помощью аргумента nextPage в конфиге. Он может принимать в себя:

  1. Следующую страницу, на которую возможен переход. См. пример
  2. Функцию, возвращающую следующую страницу. См. пример
  3. Функцию, которая возвращает Promise со страницей. См. пример

Прокидывание данных снаружи

Для использования внешних данных в процессе работы чата нужно использовать объект Props:

import {createPage, runConforms, createProps, Stop} from 'chat-builder'

const value = {}
const shared = createProps(value)
const page = createPage({
    props: shared,
})

page.use((_, props) => {
    done()
    return {
        steps: [],
        nextPage: Stop,
    }
})

runConforms(page, {
    notifyView: () => {},
})

Для деталей смотри тесты.

Компоненты

  • Input
import {createInput} from 'chat-builder'

const Input = ({
    value, // текущее значение поля
    setValue, // изменить текущее значение поля
    submit, // отправить ответ
}) => {}
const myInput = createInput({
    component: Input,
})

В качестве примера смотрите input.js который идёт в составе библиотеки.

  • useChatBuilder hook
import {useChatBuilder} from 'chat-builder'

const MyChat = (props) => {
    const Chat = useChatBuilder(page)

    return <Chat {...props} />
}

<MyChat a='foo' />

тесты

/chat-builder/

    Package Sidebar

    Install

    npm i chat-builder

    Weekly Downloads

    3

    Version

    0.17.2

    License

    MIT

    Unpacked Size

    26.9 kB

    Total Files

    4

    Last publish

    Collaborators

    • xavescor