首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

react-admin -停止列表的过滤器提交"onChange“

react-admin是一个基于React和Material-UI的开源框架,用于快速搭建管理界面和后台应用程序。它提供了一套丰富的UI组件和功能,可以轻松地创建和管理各种数据模型和交互。react-admin的主要目标是简化开发过程,提高开发效率,并提供优秀的用户体验。

针对你提到的问题,停止列表的过滤器提交"onChange"是指在react-admin中,当列表过滤器的值发生变化时,可以通过"onChange"事件来触发提交操作的停止。

具体来说,react-admin提供了Filter组件用于实现列表过滤器。每个过滤器都可以监听其值的变化,并在值变化时触发相应的操作。默认情况下,react-admin会在过滤器的值发生变化时自动提交过滤器并重新加载列表数据。但是,有时我们希望在过滤器值发生变化时,不立即提交和重新加载列表,而是等待用户完成所有过滤器操作后再手动提交。这时可以使用"onChange"事件来停止过滤器的提交。

以下是一个示例代码,演示如何停止列表的过滤器提交"onChange":

代码语言:txt
复制
import React, { useEffect, useState } from 'react';
import { useListContext } from 'react-admin';
import { Filter, TextInput } from 'react-admin';

const CustomFilter = () => {
  const { setFilters } = useListContext();
  const [filterValues, setFilterValues] = useState({});

  useEffect(() => {
    setFilters(filterValues);
  }, [filterValues, setFilters]);

  const handleInputChange = (event) => {
    setFilterValues({ ...filterValues, [event.target.name]: event.target.value });
  };

  const handleSubmit = (event) => {
    event.preventDefault();
    // 在这里可以自定义处理过滤器提交的操作
    // 可以根据需要进行异步请求、筛选、排序等操作
    // 最后更新filterValues,将处理后的值赋给filterValues
    // 例如:setFilterValues({ ...filterValues, [event.target.name]: event.target.value });
  };

  return (
    <Filter onSubmit={handleSubmit}>
      <TextInput source="name" onChange={handleInputChange} />
      {/* 其他过滤器组件 */}
      <button type="submit">提交</button>
    </Filter>
  );
};

export const MyList = (props) => (
  <List {...props} filters={<CustomFilter />} perPage={10}>
    {/* 列表组件 */}
  </List>
);

在上述示例中,我们自定义了一个过滤器组件CustomFilter,并在其中使用useListContext钩子函数获取列表上下文。通过setFilterValues函数更新filterValues的值,并在useEffect钩子中监听filterValues的变化。当filterValues发生变化时,会触发setFilters函数,从而提交过滤器并重新加载列表数据。

在过滤器组件的handleInputChange函数中,我们监听过滤器输入框的值变化,并更新filterValues。而handleSubmit函数则用于自定义处理过滤器提交的操作,可以根据实际需求进行异步请求、筛选、排序等操作,最后更新filterValues。

最后,在Filter组件中,我们将自定义的TextInput组件放入,并通过onChange事件来触发handleInputChange函数的调用。同时,我们为提交按钮绑定handleSubmit函数,当用户点击提交按钮时,会触发提交操作。

请注意,以上示例仅用于演示如何停止列表的过滤器提交"onChange",实际使用中还需要根据具体业务需求进行调整和扩展。

推荐的腾讯云相关产品:

以上是针对react-admin中停止列表的过滤器提交"onChange"的完善和全面的回答,希望能对你有所帮助。如果有任何问题,请随时追问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

停止编写糟糕提交消息!

他们试图理解你所做更改细节,但是由于你提交消息不是描述性,因此他们无法获取任何信息。 然后,他们尝试去查看每个提交差异。但是,即使这样做了,他们仍然无法确定你在实现中选择背后思考过程。...理想情况下,良好提交消息将被分为三部分:主题,正文和结尾。 主题 主题应该是简洁一行,总结你所提交更改。 下面例举一个很好提交信息,例如“feature:查询项目应用率功能”。...一个错误提交消息,例如“fix bug”,在其他人看到这条提交信息时候就会不知所措。 正文 正文包含你要传达信息,你可以在其中详细了解有关更改信息。...你可以解释为什么要进行这些更改,为什么要选择以这种特定方式实施更改以及可以帮助人们理解你提交背后思维过程其他任何原因。...那还不赶紧开始遵循有关 Git 提交消息最佳实践!

55320
  • Easyui datagrid combobox输入框非法输入判断与事件总结

    测试环境 jquery-easyui-1.5.3 常见事件 onSelect // 选择下拉列表项时触发事件 onHidePanel // 收起下拉列表时触发事件 onChange // commbox...onChange -> onHidePanel; 如果选取项和当前输入框值一样,仅会触发事件:onHidePanel 2、输入 通过在Combobox输入框中手动输入数据 如果停止输入后数据和输入前值不一样...,先后触发事件:onUnselect -> onChange 收起下拉列表时,触发事件: onHidePanel 2、输入 新增未选:输入值如果匹配到下拉列表某个未选项,则自动选中该项,先后触发事件...: onSelect -> onChange 取消已选:修改已经输入且有匹配项值,修改成无匹配项值,则自动取消已选中对应项,先后触发事件:onUnselect -> onChange 如果停止输入值和输入前不一样...附:我早些前做法,如下,获取输入框值,然后遍历逗号分隔每项是否在下拉列表中,是的话停止遍历,进行下一个项检测,只要有一项不符则判断为非法输入。

    3.3K30

    从 ant design 中,学一手复杂组件交互最佳实践

    但是其实我们可能只是需要从 onChange 中获取到当前选中结果,然后将这个结果整合到接口参数中去提交表单。...因此,在使用时,我们需要考虑是,利用 defaultValue 或者 value 去回显组件在初始化时数据。 然后利用 onChange 获取得到最新值即可。...例如,我们有一个配置项名为被选中学员。在页面上我们使用一个列表来暂时选中结果列表。 在该结果展示列表中,可以删除项。 当需要重新选中时,需要点开一个弹窗,然后弹窗中有一个完整的人员分页列表。...大家可以脑补一下 我们可以把这一部分统一封装成一个 TreeSelect 那样组件,命名为 PersonnelSelector,其中包括:展示结果列表组件、弹窗组件、弹窗中分页列表组件 对于内部而言...,构成非常复杂 但是对于外部而言,他构成就非常简单,我们只需要通过 value/defaultValue 回显数据,并且通过 onChange 获取操作之后最新选中值即可。

    18010

    FusionDesign中分页组件使用

    FusionDesign中分页组件分为两种,受控组件和非受控组件,我们在做分页式,基本上用到都是受控组件,因为在整个页面中,并不是只有分页组件控制着数据展示总条数,过滤器也会影响数据总条数,总条数发生变化...image.png 最简单分页器代码: Pagination有几个重要参数,total、current、和onChange: total是数据总条数,current是当前页面,onChange是页码发生变化时触发事件,这里面有个隐藏属性没有展示但是也是必须就是每页展示数据条数...分页显示器一般在页面中展示数据发生变化是需要重现渲染,比如过滤器变化,页码发生变化,删除某条数据,增加了某条数据,都需要分页器去重新渲染,渲染依据是根据服务端返回一些必要数据,数据总条数,当前页码...所以我们在页面数据发生变化时,一般会重新请求服务端数据,以保证返回正确total。

    59510

    TCB系列学习文章——数据库实时推送

    onChange 用于接收变更快照,onError 用于处理监听错误。如果监听发起失败或监听过程中出现不可恢复错误,则会终止监听并通过 onError 抛出异常。...onChange 会在第一次监听初始化及后续数据变更时收到推送事件。...onChange 收到 snapshot 变更快照中带有如下字段: 字段 类型 说明 docChanges ChangeEvent[] 更新事件数组 docs object[] 数据快照,表示此更新事件发生后查询语句对应查询结果...QueueType 枚举值 枚举值 说明 init 初始化列表 update 列表记录内容有更新,但列表包含记录不变 enqueue 记录进入列表 dequeue 记录离开列表 变更事件会细分记录数据变更类型...监听记录数限制 一次监听记录数上限为 5000,若超出上限会抛错并停止监听。

    1.3K30

    问题解决了,我却不知道原因

    完全隔离 完全隔离,是服务发现节点列表和Promethus节点列表可以允许不一致,这种方式实现最简单,也不会出现其它问题。...对于Promethus,在服务启动时候,会指定默认ip列表,这样在数据统计时候,仅针对默认ip列表ip进行统计。...也就是说,在服务发现监控到节点列表有变化时候,在Promethus中使用最新节点列表,但是,因为需要重新加载节点列表,所以需要新建一个Promethus Client,并使用新列表对其进行初始化。...在本地,使用git diff命令查看本次提交,研究了下代码,发现没啥问题呀,于是重新编译了下(此处为重点,本地默认使用了debug模式),然后再次在灰度机上启动,一切正常。...好了,截止到此,问题已经解决了,能够确认原因是因为编译环境不同导致线上故障(三方库在本地编译然后提交代码库,而发布机则只编译业务代码),但是为什么编译环境能导致这个奇奇怪怪问题,我也没有去深究(涉及到编译环境

    38810

    一步HTML5教程学会体系

    用于组合元素 itemprop 条目列表 用于组合条目 style css样式表 给元素定义内联样式 subject 用户定义id 定义元素关联条目 tabindex 定义元素tab键顺序 title...,可以开始播放时触发 oncanplaythrough script 媒体可以播放到结束时触发,无需停止缓冲 onchange script 元素发生变化时触发 onclick script...script 元素被选中时触发 onstalled script 获取媒体数据发生错误时触发 onstorage script 载入文档时触发 onsubmit script 表单提交时触发...password 用于敏感信息自由形式文本字段,名义上没有换行符。 checkbox 预定义列表一组零个或多个值。 radio 一个枚举值。 submit 一个自由形式启动表单按钮。...file 带有 MIME 类型任意文件以及可选文件名。 image 一个坐标,相对于特定图片尺寸,额外语义是它必须是最后选中值,同时启动表单提交

    1.2K20

    web前端必备英语词汇都在这儿了,客官你了解多少?

    返回第一个标签节点 function() 函数 father 父亲 float 浮动 filter 滤镜,过滤器 font 字体 first 第一个 for 在循环语句中一个保留字 fixed 固定...onchange 在改变时 onfocus 在获得焦点时 onblur 在失去焦点时 onscroll 窗口滚动事件 onresize 窗口大小监听事件 out 减速到0缓动 onStart 开始事件...onComplete 完成事件 onStop 停止事件 onUpdate 更新事件 object 对象 optional 可选 oblique 一种斜体 orange 橙色 one...随机 round 取整 S: sinusoidal 正弦曲线缓动 start 开始 stop 停止 setinterval 时间函数 sibling 兄弟 scrollTop 获取文档滚动高度 screenX...元素左边界 setAttribute 设置节点上属性 submit 提交 scroll 滚动 shadow 阴影 silver 银色 special 特殊 size

    3K20

    解密hash算法:散列表、布隆过滤器和分布式一致性hash原理与应用

    相较于平衡二叉树,散列表是一种不比较key,而是根据key计算key在表中位置数据结构;是key和其所在存储地址映射关系。散列表通过此方式达到快速索引目的。...当前槽位指针指向上一个槽位位置是为了方便进行头插法。2.7、小结散列表需要掌握知识点:散列表与其他数据结构比较,比如平衡二叉树。...注意STL散列表优化方案。三、布隆过滤器 (Bloom Filter)3.1、背景无论是使用散列表还是平衡二叉树(红黑树、B树、B+树等)数据结构,都存储了key-value值。...3.2、布隆过滤器构成布隆过滤器原理本质上和散列表是一样。但布隆过滤器为了节约内存,不是使用数组,而是使用位图(bitmap)。位图特点是它槽位只有两种状态:0或者1。(1)位图。...解决方案,如图中 3 所示:在redis设置键值对,依次避免访问数据库;缺点是过多会占用过多内存,可以给key设置过期expire key 600ms,停止攻击后最终由

    17410

    salesforce零基础学习(七十四)apex:actionRegion以及apex:actionSupport浅谈

    他们进行操作时候,会将整个表单提交。但是我们很多时候需求,只是希望提交一部分内容,而不是全部。这个时候,我们就需要用到apex:actionRegion....,下拉列表控制着另外一个下拉列表显示。...acc.Industry}"/> 7 <apex:actionSupport event="<em>onchange</em>" action="{!...其实上面的vf代码是有问题<em>的</em>,当选择了下拉框,右侧<em>的</em>下拉框<em>的</em>值也不修改成yyy,原因是这样<em>的</em>: 当actionSupport执行时,会<em>提交</em>整个form表单,因为上面有一个required<em>的</em>字段,所以导致<em>提交</em>表单失败...总结:使用actionRegion和actionSupport可以更加灵活<em>的</em><em>提交</em>表单,提升表单<em>提交</em><em>的</em>性能。内容描述错误<em>的</em>地方欢迎指出,有问题欢迎留言。

    1.7K70
    领券