instansearch-tagsbox-react

中文文档
1.2.0发布于 2018/10/29ESM + CJS
此软件包已被标记为弃用

This name has a typo, instead use https://yarn.pm/instantsearch-tagsbox-react

中文使用文档
文档目录11 节
  1. 演示
  2. 描述
  3. 获取代码
  4. JavaScript
  5. CSS
  6. 用法
  7. 需求
  8. 例子
  9. 道具
  10. 实现细节
  11. 贡献

TagsBox小部件

🎥 在CodeSandbox现场观看

演示

Demo of TagsBox Widget

描述

这是 TagsBox 实验室小部件 反应InstantSearch. 您可以使用这个小部件用Algolia搜索和选择标记,并在以后的任何目的中使用它们。

这个小部件显示一个输入,在用户输入时提供标记建议。然后可以单击标签以添加到输入中。

这有助于用户选择记录用于其他目的,而不是搜索它们,而是重用它们以完成以后的其他操作(例如,在创建博客文章时选择发送电子邮件的联系人或类别)。

目录表

获取代码

这个小部件自带JavaScript,但也有预定义的CSS。

JavaScript

您可以从存储库本身复制并粘贴JavaScript代码,在 src / lib 文件夹,并使用 <Tag /> 组件。

CSS

您可以从存储库本身复制并粘贴必要的CSS代码,将其抓取进来 src / lib / Tags.css。

用法

最简单的用法是:

import { InstantSearch } from 'react-instantsearch-dom';
import TagsBox from 'instansearch-tagsbox-react';

export const SelectedTagComponent = ({ hit }) => (
    <Fragment>
        {hit.lastname}
    </Fragment>
);

export const SuggestedTagComponent = ({ hit }) => (
    <Fragment>
        {hit.firstname} {hit.lastname}
    </Fragment>
);

<InstantSearch
    appId="..."
    apiKey="..."
    indexName="..."
>
    <TagsBox
        selectedTagComponent={SelectedTagComponent}
        suggestedTagComponent={SuggestedTagComponent}
        onUpdate={(newTags, previousTags) => console.log(newTags, previousTags)}
        translations={{ placeholder: "Search…", noResult: "…" }}
    />
</InstantSearch>

需求

您应该封装 <TagsBox /> 组件 <InstantSearch /> 一个。

要正常工作, 您需要为组件提供三个props:

  • selectedTagComponent (component):描述一个选定的标签应该如何显示
    • 收到一个 hit 作为参数(来自阿尔及利亚)
  • suggestedTagComponent (组件):描述建议的标签应该如何显示
    • 收到一个 hit 作为参数(来自阿尔及利亚)
  • onUpdate (函数):每次添加或删除标签时调用
    • 接收代表新标记和前一个标记的两个参数。它们都是数组,分别包含当前选择的标记和以前的标记

可以封装 <TagBox /> 组件 <Index /> 如果您希望针对来自同一InstantSearch实例的不同索引,请使用。

例子

道具

名字类型使用
selectedTagComponent(必需)组件描述一个选定的标签应该如何显示。
suggestedTagComponent(必需)组件描述建议的标签应该如何显示。
onUpdate(必需)函数每次添加或删除标签时调用。
NoResultComponent组件描述一个不存在的标签应该如何显示(应该使用) onAddTag 道具)。
onAddTag函数在添加标记以操作对象之前调用。要么取 hit (对象)或 value (string)作为参数,并且应该始终返回一个 object 与一个 objectID 价值。
翻译对象设置 placeholder 和 noResult 翻译。
limitTo数量限制要选择的标签数量。

实现细节

控件实现此小部件 connectAutoComplete() 连接器. 要了解有关连接器的更多信息,可以阅读相关的 指南。

贡献

要对项目做出贡献,请克隆此存储库,然后运行:

yarn
yarn start

版本与发布记录

instansearch-tagsbox-react 共发布 6 个版本,首次发布于 2018/10/24;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.2.0latest2018/10/298 年前
1.1.22018/10/268 年前
1.1.12018/10/268 年前
1.1.02018/10/258 年前
1.0.12018/10/258 年前
1.0.02018/10/248 年前

关于 instansearch-tagsbox-react 的常见问题

instansearch-tagsbox-react 是什么?

🎥 在CodeSandbox现场观看注意:该包已被作者标记为弃用——This name has a typo, instead use https://yarn.pm/instantsearch-tagsbox-react

如何安装 instansearch-tagsbox-react?

在项目目录运行 npm install instansearch-tagsbox-react,或使用 pnpm add / yarn add / bun add。

instansearch-tagsbox-react 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/instansearch-tagsbox-react 是否存在。

instansearch-tagsbox-react 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

instansearch-tagsbox-react 可以商用吗?

instansearch-tagsbox-react 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

instansearch-tagsbox-react 还在维护吗?

最新版本 1.2.0 发布于 2018/10/29(8 年前);至今共发布 6 个版本,其中过去 12 个月发布了 0 个;首次发布于 2018/10/24。作者已将其标记为弃用,新项目建议寻找替代方案。