关于#reactjs 使用antd4组件库开发+Ts语言#的问题,请各位专家解答解决不了有什么好办法吗!(react-typescript)

关于#reactjs 使用antd4组件库开发+Ts语言#的问题,请各位专家解答解决不了有什么好办法吗!

img

img

img

这个问题就是你在点击跳转到第多少页的时候,你写的是原始的获取数据列表的方法,你应该把搜索条件带上。

你在 table change 事件里 需要把 搜索条件也带上。 不止是把当前页,每页条数 传过去,还要把搜索条件加上

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇博客也许可以解决你的问题👉 :react函数组件+ts+antd实现基本表单
  • 除此之外, 这篇博客: React+Antd+TypeScript 开发规范中的 注释 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    使用

    koroFileHeader 插件用于快速生成开发者注释。koroFileHeader是一款用于在vscode中用于生成文件头部注释和函数注释的插件,支持所有主流语言,功能强大,灵活方便,文档齐全。
    • 文件顶部的注释,包括描述、作者、日期、最后编辑时间,最后编辑人

      /*
       * @Description: app im菜单配置列表中的表格模块
       * @Author: maoyuyu
       * @Date: 2019-08-05 10:31:12
       * @LastEditTime: 2019-08-14 17:08:33
       * @LastEditors: Please set LastEditors
       */
      

      文件头部添加注释快捷键windowctrl+alt+i,macctrl+cmd+i

      在光标处添加函数注释windowctrl+alt+t,macctrl+cmd+t

      vscode setting 配置如下

      "fileheader.configObj": {
        "autoAdd": false, // 自动添加头部注释开启才能自动添加
      },
      "fileheader.customMade": {
        "Author":"[you name]",
        "Date": "Do not edit", // 文件创建时间(不变)
        "LastEditors": "[you name]", // 文件最后编辑者
        "LastEditTime": "Do not edit", // 文件最后编辑时间
        "Description":""
      },
      "fileheader.cursorMode": {
        "Author":"[you name]",
        "description": "", 
        "param": "", 
        "return":""
      }
      
    • 业务代码的注释

    • /*业务代码注释*/
      
    • 变量的注释

    • interface IState {
        // 名字
        name: string;
        // 电话
        phone: number;
        // 地址
        address: string;
      }
      
    • 公共方法/私有方法的注释

    • /**
       * 用于获取富文本通知的格式
       * @param formatContent 格式化后的content(后台返回)
       * @param useEdit 是否用于修改(true:修改通知的反显)
       */
      getContent(formatContent:string, useEdit:boolean=false){
        try{
          return useEdit? formatContent : formatContent.replace(reg,'')
        }catch(err){
          return ""
        }
      }
      
  • 以下回答来自chatgpt:

    针对使用antd4组件库配合Ts语言时可能出现的问题,可以尝试以下解决方案:

    1. 确认antd和react-scripts是否安装,可以使用以下命令安装:
    npm install antd react-scripts --save-dev
    
    1. 在使用antd时,需要在文件中引入antd的样式文件,可以在src目录下的App.js中加入以下代码来引入antd的样式:
    import 'antd/dist/antd.css';
    
    1. 如果使用typescript,需要配置tsconfig.json文件,将以下两项设置为true,开启装饰器的支持:
    {
      "compilerOptions": {
        "experimentalDecorators": true,
        "emitDecoratorMetadata": true
      }
    }
    
    1. 如果想自定义主题颜色,需要在src目录下的index.js中引入antd的样式组件,并在config-overrides.js文件中使用addLessLoader函数加载less文件:
    //index.js文件
    import { ConfigProvider } from 'antd';
    import 'antd/dist/antd.less';
    
    ReactDOM.render(
      <ConfigProvider>
        <App />
      </ConfigProvider>,
      document.getElementById('root')
    );
    
    //config-overrides.js文件
    const { override, fixBabelImports, addLessLoader } = require('customize-cra');
    
    module.exports = override(
      fixBabelImports('import', {
        libraryName: 'antd',
        libraryDirectory: 'es',
        style: true,
      }),
      addLessLoader({
        lessOptions: {
          modifyVars: { '@primary-color': '#1DA57A' },
          javascriptEnabled: true,
        },
      })
    );
    
    1. 如果想使用别名,避免使用相对路径引入文件,可以在config-overrides.js文件中使用addWebpackAlias函数设置别名:
    const { addWebpackAlias } = require('customize-cra');
    const path = require('path');
    
    module.exports = override(
      addWebpackAlias({
        '@': path.resolve(__dirname, 'src'),
      })
    );
    
    1. 如果需要使用代理请求后端接口,可以在项目根目录下创建setupProxy.js文件来配置代理。在App.js中使用axios时请求的路径就可以使用代理路径:
    //setupProxy.js文件
    const { createProxyMiddleware } = require('http-proxy-middleware');
    
    module.exports = function (app) {
      app.use(
        '/api',
        createProxyMiddleware({
          target: 'http://localhost:3001',
          changeOrigin: true,
        })
      );
    };
    
    //App.js文件
    axios.get('/api/users')
    

    以上是针对使用antd4组件库配合Ts语言可能出现的问题提供的一些解决方案,希望能对您有所帮助。如果还有其他的问题或者需要更详细的代码实现,可以在问题描述中说明,我会尽力帮您解决。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^