Ant Design 错误记录

一: 标签页Tabs

1:设置activeKey或defaultActiveKey,绑定默认值不起作用: =>    需要同时设置activeKey和defaultActiveKey。

二: 表格Table

1:当改变表格绑定的值,表单部分组件未刷新:  =>    可以在刷新列表前将绑定的值重置为空。 还不行的话可以给table加上rowKey属性(值为 string|Function(record):string)

rowKey={(record) => record.id}

2:表格有多选功能的时候,selectedRowKeys会保存所有行的key,而selectedRows只会保存当前页选中行(翻页后会丢失数据)。

三: Select下拉框

1: 可动态搜索,获取数据时,option渲染有问题   : =>   需要配置  filterOption={false}

四:Select/Dropdown/DatePicker/TimePicker的条件随着页面滚动条移动

<div id='box'>
<RangePicker
showTime={{
hideDisabledOptions: true,
defaultValue: [moment('00:00:00', 'HH:mm:ss'), moment('23:59:59', 'HH:mm:ss')],
}}
format="YYYY-MM-DD HH:mm:ss"
getCalendarContainer={() => document.getElementById('box')}
/>
</div>

 或者这种方式

 <Select getPopupContainer={triggerNode => triggerNode.parentNode}>
<Select.Option value="">全部</Select.Option>
</Select>

  

五:路由相关

 1、replace 和 push: 

场景1: 页面A --(push())--> 页面B --(replace())--> 页面C

场景2: 页面A --(push())--> 页面B --(push())--> 页面C

replace:替换当前路由,如果在页面C点击浏览器的返回键,会返回到页面A。因为页面C的路由替换了页面B。

push:显示新路由,将老路由记录在历史中。如果在页面C点击浏览器的返回键,会返回到页面B。

五:表单相关

 1、自定义校验validator:

官网中描述,自定义校验(注意,callback 必须被调用)。callback必须被调用,if... else...中间不允许return出来

例子:

validator: (rule, value, callback) => {
if (value && !/^[0-9a-zA-Z]*$/g.test(value)) {
callback('请输入正确格式的账号名!');
} else if (!value) {
callback('请输入账号名!');
}
callback();
},

如果我们使用了数字输入框,输入数字后,还是会报错,比如: ,你需要再rules中定义此校验为数字类型

rules: [{ type: 'number'}]

  

当我们将页面数据填完后,都符合要求,但是就是无法执行到validateFieldsAndScroll里,这时候我们需要查看自定义validator中是不是有错误,比如我在数字输入框里面使用了字符串长度的判断就会有错,但是不错暴露出来让你看到

rules: [
{
message: '请输入数量!',
whitespace: true,
type: 'number',
validator: (rule, value, callback) => {
if (value === null || value.trim().length === 0) { // 错误
callback('请输入数量!');
}
callback();
},
},
],

这里我对数字使用了trim()方法会报错,所以要用JSON.stringify()包裹起来

2:数字输入框限制小数点,负数

<InputNumber
parser={value => {
return value.replace(/[.-]/g, '');
}}
/>

  

N: roadhog配置

1.配置项目内部的绝对路径

在.webpackrc.js中配置如下:    '@': `${__dirname}/src`:此时的@指向src 。但是在开发环境中似乎不行

  alias: {
components: path.resolve(__dirname, 'src/components/'),
'@': `${__dirname}/src`,
},

  

Ant Design 错误记录的更多相关文章

  1. Ant Design项目记录和CSS3的总结和Es6的基本总结

    这里主要是介绍自己运用ANT框架的一些小总结,以前写到word里,现在要慢慢传上来, 辅助生殖项目总结:从每个组件的运用的方法和问题来总结项目. 1.项目介绍 辅助生殖项目主要运用的是Ant.desi ...

  2. Ant Design 学习记录

    遇到的问题: 点击列表中的一个字段 , 显示出一条指定id(其他筛选条件的)数据 解决这个问题之前,要先了解 Antd的 Table中的  Column  列描述数据对象,是 columns 中的一项 ...

  3. ant design pro (十三)advanced 错误处理

    一.概述 原文地址:https://pro.ant.design/docs/error-cn 二.详细 2.1.页面级报错 2.1.1.应用场景 路由直接引导到报错页面,比如你输入的网址没有匹配到任何 ...

  4. Ant Design使用问题记录

    公司的测试管理平台前端使用的是Ant Design of React框架,后台使用的是python,数据库用的是mysql.没有参与前期的开发,听说是工作了10年积累下来的一个暂且可用的管理平台,开发 ...

  5. ant design for vue 解决 vue.esm.js?c5de:628 [Vue warn]: Invalid prop: custom validator check failed for prop "defaultValue". 的错误

    错误重现: 在使用ant design for vue 的选择器插件的时候, 设置默认为为id(为数字) 报错: 解决办法: id为数字, 而defaultValue 的key 值必须为字符串, 将i ...

  6. 使用express、react、webpack打包、socket.io、mongodb、ant.design、less、es6实现聊天室

    拿到一个项目,我们应该如何去完成这个项目呢. 是直接上手? 还是先进行分析,然后再去解决呢?毫无疑问,如果直接上手解决,那么可能会因为知道目标所在,而导致出现各种问题. 所以,我们应该系统的分析这个项 ...

  7. 【后台管理系统】—— Ant Design Pro入门学习&项目实践笔记(三)

    前言:前一篇记录了[后台管理系统]目前进展开发中遇到的一些应用点,这一篇会梳理一些自己学习Ant Design Pro源码的功能点.附:Ant Design Pro 在线预览地址. Dashboard ...

  8. react 编写 基于ant.design 页面的参考笔记

    前言 因为我没有系统的学习 react,是边写边通过搜索引擎找相对的问题,看 ant.design的 中文文档 编写的一个单页面, 以下的笔记都是写 gksvideourlr 时记录的. 重新设定表单 ...

  9. 2017.11.6 - ant design table等组件的使用,以及 chrome 中 network 的使用

    一.今日主要任务 悉尼小程序后台管理开发: 景点管理页面: 获取已有数据列表,选取部分数据呈现在表格中,根据景点名称.分类过滤出对应的景点.   二.难点 1. 项目技术选取: ant design. ...

随机推荐

  1. 手机端web(iPad)页面自适应js

    有关编写手机页面(ipad页面)自适应的方法有很多,比如:bootstrap,rem等等.下面分享给大家一个js控制viewPort视区自适应缩放的方法(我给它命名为phone.js): 将phone ...

  2. 按照ID倒序查出某个字段不重复的集合

    一.需求 有如下一个表pp_test: id name 1 aa 2 bb 3 cc 4 aa 5 cc 6   要求查出name字段中不重复的值(不算空值),并且按照id的倒序排列(不必输出ID). ...

  3. Spring Cloud第三篇 | 搭建高可用Eureka注册中心

    ​ ​本文是Spring Cloud专栏的第三篇文章,了解前两篇文章内容有助于更好的理解后面文章: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring ...

  4. MyBatis的配置与使用(增,删,改,查)

    ---恢复内容开始--- Mybatis入门介绍 一.MyBatis介绍 什么是MyBtis? MyBatis 是一个简化和实现了 Java 数据持久化层(persistence layer)的开源框 ...

  5. webpack4分包方案

    webpack4放弃了 commonsChunkPlugin,使用更方便灵活智能的 splitChunks 来做分包的操作. 下面有几个例子,并且我们假设所有的chunks大小至少为30kb(采用sp ...

  6. 在modelarts上部署backend为TensorFlow的keras模型

    最近老山在研究在modelarts上部署mask-rcnn,源代码提供的是keras模型.我们可以将keras转化成savedModel模型,在TensorFlow Serving上部署,可参考老山的 ...

  7. Python文本转化语音模块大比拼,看看青铜与王者的差别!

    文本转语音 如果把Python比喻成游戏中的一个英雄,你觉得它是谁?对于Dota老玩家来说,我会想到钢琴手卡尔!感觉Python和卡尔一样,除了生孩子什么都可以做的角色.日常生活中,我们会涉及到很多语 ...

  8. HDU5470 Typewriter (SAM+单调队列优化DP)

    Typewriter Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Tota ...

  9. 2018HDU多校训练-3-Problem M. Walking Plan

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=6331 Walking Plan  Problem Description There are n inte ...

  10. Orleans的入门教程

    Orleans的入门教程  官方Hello World 地址 https://github.com/dotnet/orleans/tree/master/Samples/2.0/HelloWorld ...