长冬未歇 2023-09-28 10:00 采纳率: 46.2%
浏览 23
已结题

antd select组件问题

img

img

img

贴一下我的代码部分 想问一下 我用的是antd3.0组件库 的select ,然后我在dropDownRender里加了一个分页组件打算实现实时查询加分页的功能,按照官网的办法https://3x.ant.design/components/select-cn/#components-select-demo-custom-dropdown-menu 我加了 e.preventDefault()。但是现在的结果是点击切换10/页 20/页的时候 浮层还是会关闭,只有选择页码的时候这个 e.preventDefault()才生效,请问有没有什么解决办法

  • 写回答

10条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-09-28 10:09
    关注
    获得0.75元问题酬金

    该回复可能引自强大而免费的微信小程序:皆我百晓生。


    根据您的描述,我理解您想在antd的select组件中实现实时查询加分页的功能,并且遇到了dropDownRender中的问题。目前,只有当选择页码时e.preventDefault()才生效,但在切换每页显示数量时浮层会关闭。

    一种可能的解决办法是在点击切换每页显示数量时禁止select组件关闭浮层。您可以尝试在点击切换每页显示数量时,手动改变select组件的isOpen状态来阻止关闭浮层。具体代码示例如下:

    import React, { useState } from "react";
    import { Select } from "antd";
    
    function App() {
      const [isOpen, setIsOpen] = useState(false);
      
      const handleDropdownVisibleChange = (open) => {
        setIsOpen(open);
      };
      
      const dropDownRender = (menu) => (
        <div>
          {menu}
          <div style={{ padding: "8px", display: "flex", justifyContent: "center" }}>
            <a
              href=""
              onClick={(e) => {
                e.preventDefault();
                // 阻止关闭浮层
              }}
            >
              切换 10/页
            </a>
            <span style={{ margin: "0 8px" }}>/</span>
            <a
              href=""
              onClick={(e) => {
                e.preventDefault();
                // 阻止关闭浮层
              }}
            >
              切换 20/页
            </a>
          </div>
        </div>
      );
    
      return (
        <Select
          open={isOpen}
          onDropdownVisibleChange={handleDropdownVisibleChange}
          dropdownRender={dropDownRender}
        >
          {/* 选项内容 */}
        </Select>
      );
    }
    
    export default App;
    

    在上述代码中,我们使用useState来管理isOpen状态。在点击切换每页显示数量的链接时,通过e.preventDefault()来阻止默认的链接跳转行为,并在onDropdownVisibleChange里改变isOpen状态来阻止关闭浮层。

    希望以上解决办法对您有帮助。如果还有其他问题,请提供更多细节或相关代码。

    评论

报告相同问题?

问题事件

  • 系统已结题 10月6日
  • 创建了问题 9月28日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见