• α堆栈 α
  • 应用提供商
  • 自动完成
  • 《阿凡达》
  • 徽章
  • 横幅
  • 流血 α
  • 盒子 α
  • 按钮
  • 按钮组
  • Callout卡
  • 标题
  • 复选框
  • 选择列表
  • 可折叠的
  • 颜色选择器
  • α
  • 组合框
  • 内容块 α
  • 上下文保存酒吧
  • 数据表
  • 日期选择器
  • 描述表
  • 显示文本
  • 降落区
  • 空的状态
  • 例外列表
  • 过滤器
  • 页脚的帮助
  • 形式
  • 表格布局
  • 框架
  • 全屏酒吧
  • 网格 α
  • 标题
  • 图标
  • 索引表
  • 内联 α
  • 内联错误
  • 键盘键
  • 布局
  • 链接
  • 列表
  • 列表框
  • 加载
  • 媒体卡
  • 模态
  • 导航
  • 选项列表
  • 页面
  • 页面动作
  • 分页
  • 弹出窗口
  • 进度条
  • 单选按钮
  • 滑块范围
  • 资源项目
  • 资源列表
  • 可滚动
  • 选择
  • 设置切换
  • 弃用
  • 骨架正文
  • 骨架显示文本
  • 框架页面
  • 骨架的标签
  • 骨架缩略图
  • 微调控制项
  • 堆栈
  • 副标题
  • 选项卡
  • 标签
  • 文本 α
  • 文本容器
  • 文本字段
  • 文本样式
  • 缩略图
  • 瓷砖 α
  • 烤面包
  • 工具提示
  • 窗口的顶部
  • 视频缩略图
  • 视觉上隐藏
  • 令牌
  • 图标
  • 贡献
  • 沙盒 α
  • 自动完成

    自动完成组件是一个输入字段,在商家输入时提供可选择的建议。它允许商家快速搜索并从大量选项中进行选择。这是一个方便的包装组合框而且列表框UI差异较小的组件。

    用于帮助商家从选项列表中快速完成文本输入。

    进口自动完成图标“@shopify /北极星”进口SearchMinor“@shopify / polaris-icons”进口useStateuseCallbackuseMemo“反应”函数AutocompleteExample常量deselectedOptionsuseMemo= >价值:“乡村”标签:“乡村”价值:“古董”标签:“古董”价值:乙烯基的标签:乙烯基的价值:“古董”标签:“古董”价值:“翻新”标签:“翻新”常量selectedOptionssetSelectedOptionsuseState常量inputValuesetInputValueuseState常量选项setoptionuseStatedeselectedOptions常量updateTextuseCallback价值= >setInputValue价值如果价值= = =setoptiondeselectedOptions返回常量filterRegex正则表达式价值“我”常量resultOptionsdeselectedOptions过滤器选项= >选项标签匹配filterRegexsetoptionresultOptionsdeselectedOptions常量updateSelectionuseCallback选择= >常量selectedValue选择地图设置selectedItem= >常量matchedOption选项找到选项= >返回选项价值匹配设置selectedItem返回matchedOption& &matchedOption标签setSelectedOptions选择setInputValueselectedValue0选项常量文本框<自动完成TextField onChangeupdateText标签“标签”价值inputValue前缀<图标的源SearchMinor颜色“基地”/>占位符“搜索”/>返回<div风格高度:“225 px”><自动完成选项选项选择selectedOptionsonSelectupdateSelection文本框文本框/></div>

    道具

    想让这个功能变得更好吗?请分享你的反馈

    接口 AutocompleteProps
    id? 字符串

    自动完成的唯一标识符。

    选项 [] |[]

    要列出的选项集合。

    选择 字符串[]

    所选的选项。

    文本框 反应ReactElement

    附加到选项列表的文本字段组件。

    preferredPosition? “以上”|“下面”|“mostSpace”

    弹出窗口的首选打开方向。

    listTitle? 字符串

    选项列表的标题。

    allowMultiple? 布尔

    允许选择多个选项。

    actionBefore? & {wrapOverflow?:布尔;}

    在选项列表上方呈现的操作。

    加载? 布尔

    显示加载状态。

    willLoadMoreResults? 布尔

    指示是否动态加载更多的结果。

    emptyState? 反应ReactNode

    在没有选项时呈现。

    onSelect 选择:字符串[]) = >无效

    当选项的选择发生改变时,回调函数。

    onLoadMoreResults? ()= >无效

    当到达列表末尾时,回调。

    最佳实践

    自动完成组件应该:

    • 要有清晰的标签,这样商家就能清楚地看到有什么样的选择
    • 限制一次显示的选项数量
    • 不能在弹窗内使用
    • 在填充选项数据时,向商家指示加载状态

    内容的指导方针

    自动完成的输入字段应该在内容的指导方针对于文本字段。



    可访问性

    结构

    自动完成组件基于ARIA 1.2组合框模式Aria 1.2列表框模式

    自动完成列表默认显示在文本字段或其他控件的下方,因此很容易被商家发现和使用。但是,您可以使用preferredPosition道具。

    自动补全功能对于有视觉、运动和认知障碍的商人来说是一个挑战。即使使用最佳实践构建这些特性,也很难与一些辅助技术一起使用。商家应该总是能够搜索,输入数据,或执行其他活动,而不依赖于自动完成功能。

    使用自动补全作为逐步增强,使界面更容易为大多数商家使用。

    要求商家从自动完成中做出选择来完成一个任务。

    键盘支持

    • 给出自动完成文本输入键盘的焦点选项卡键(或转变+选项卡当向后移动)
    • 使用向上和向下方向键访问选项列表
    • 选择具有焦点的选项输入/返回关键