查询控件

发展指南

用法

从'react'导入{useState};从“@wordpress/components”导入{QueryControls};常量QUERY_DEFAULTS={类别:1,类别:[{id:1,name:'类别1',父级:0,},{id:2,name:'类别1b',父级:1,},{编号:3,name:'类别2',父级:0,},],最大项目数:20,最小项目数:1,项目数:10,订单:'asc',orderBy:'标题',};const MyQueryControls=()=>{const[query,setQuery]=useState(query_DEFAULTS);const{category,categories,maxItems,minItems,numberOfItems,order,orderBy}=查询;const updateQuery=(newQuery)=>{setQuery({…query,…newQuery});};返回(<查询控件{…{maxItems,minItems,numberOfItems,order,orderBy}}onOrderByChange={(newOrderBy)=>updateQuery({orderBy:newOrderB})}onOrderChange={(newOrder)=>更新查询({order:newOrder})}categoriesList={categorises}selectedCategoryId={category}onCategoryChange={(newCategory)=>updateQuery({category:newCategories})}onNumberOfItemsChange={(newNumberOfItems)=>updateQuery({numberOfItems:newNumberOf2Items})}/>);};

多类别选择器

这个查询控件组件现在支持多类别选择,以取代目前可用的单一类别选择。要启用它,请使用带有新道具的组件:类别建议代替类别列表所选类别数组而不是所选类别Id如此:

常量QUERY_DEFAULTS={orderBy:'标题',订单:'asc',所选类别:[{id:1,value:'类别1',父级:0,},{id:2,value:“1b类”,父级:1,},],类别:{“类别1”:{id:1,name:'类别1',父级:0,},“1b类”:{id:2,name:'类别1b',父级:1,},“类别2”:{编号:3,name:“类别2”,父级:0,},},项目数:10,};const MyQueryControls=()=>{const[query,setQuery]=useState(query_DEFAULTS);const{orderBy,order,selectedCategorys,categories,numberOfItems}=查询;const updateQuery=(newQuery)=>{setQuery({…query,…newQuery});};返回(<查询控件{…{orderBy,order,numberOfItems}}onOrderByChange={(newOrderBy)=>updateQuery({orderBy:newOrderB})}onOrderChange={(newOrder)=>updateQuery({order:newOrder})}categorySuggestions={categories}selectedCategories={selectedCategories}onCategoryChange={(category)=>updateQuery({selectedCategories:category})}onNumberOfItemsChange={(newNumberOfItems)=>updateQuery({numberOfItems:newNumberOf2Items})}/>);};

类别列表的格式也需要更新,以匹配类别建议的预期类型。

道具

authorList(作者列表):作者[]

要从中选择的作者数组。

  • 必需:否
  • 平台:Web

类别列表:类别[]

类别数组。当与关于类别更改属性,它使组件呈现允许一次选择一个类别的UI。

  • 必需:否
  • 平台:Web

类别建议:记录<类别[“名称”],类别>

以类别名称为键的类别对象。当与关于类别更改属性,它使组件呈现支持多重选择的UI。

  • 必需:否
  • 平台:Web

maxItems(最大项目数):

最大项目数。

  • 必需:否
  • 默认值:100
  • 平台:Web

最小项目数:

最小项目数。

  • 必需:否
  • 默认值:1
  • 平台:Web

项目数:

要通过查询检索的选定项目数。

  • 必需:否
  • 平台:Web

关于作者更改:(newAuthor:string)=>void

接收新作者值的函数。如果未指定,则不会呈现作者控件。

  • 必需:否
  • 平台:Web

关于类别更改:(newCategory:string)=>void|FormTokenFieldProps['onChange']

接收新类别值的函数。如果未指定,则不会呈现类别控件。
函数的签名会根据是否启用了多类别选择而更改。

  • 必需:否
  • 平台:Web

OnNumberOfItems更改:(newNumber?:number)=>无效

接收新项目数的函数。如果未指定,则不会呈现项目数范围控件。

  • 必需:否
  • 平台:Web

订单变更:(newOrder:'asc'|'desc')=>无效

接收新订单值的函数。如果此道具或按更改排序属性,则不呈现顺序控件。

  • 必需:否
  • 平台:Web

按更改排序:(newOrderBy:“date”|“title”)=>无效

接收新orderby值的函数。如果此道具或订单变更属性,则不呈现顺序控件。

  • 必需:否
  • 平台:Web

秩序:“asc”|“desc”

检索帖子的顺序。

  • 必需:否
  • 平台:Web

订购依据:“日期”|“标题”

用于排序帖子的元键。

  • 必需:否
  • 平台:Web

选择的作者ID:

所选作者ID。

  • 必需:否
  • 平台:Web

选定的类别:类别[]

选定的类别类别建议道具。

  • 必需:否
  • 平台:Web

所选类别Id:

选定的类别类别列表道具。

  • 必需:否
  • 平台:Web