一、antd@3.x版本的table中rowselection在异步加载数据的情况下不会自动保存上一页选中的数据
- antd@3.x版本的table中rowselection属性在异步加载的情况下换页不会自动保存上一页选中的具体数据(selectedRows)但是会保存id,所以造成了保存数据会丢失的情况
- 处理办法:由单纯使用onChange事件监听新增一个onSelect事件监听表格被选中的事件,进行[选中/取消]的条件判断对数据(selectedRows)进行处理,但是selectedRows这个变量必须声明为全局的,组件只有在初始化的时候同步已选中的数据内容
二、sortablejs拖动区域内包含input,如果设置input不可拖拽会造成input无法获取焦点输入内容
- input组件注册click/focus事件设置drag状态为false
- blur事件设置drag为true
- input在获取focus的情况下全部选中文字
三、在弹窗情况下请求接口会触发父组件的props更新导致父组件未保存的操作初始化
- 在父组件监听props更新的componentWillReceiveProps周期,加上一个条件:弹窗为visible的情况下不做数据处理
四、input输入框设置了关闭自动填充的属性无效
- 处理方法: 初始化input为添加readOnly属性,输入框聚焦取消readOnly属性,失去焦点再次添加readOnly属性
- 遗留问题: 浏览器自带的密码本提示列表尝试多次暂无法取消,查看其他平台也没有关闭密码本
五、在移动元素的同时如何不触发点击事件
const container = document.querySelector(".container");
let beforeX, beforeY, afterX, afterY;
container.addEventListener('mousedown', e => {
[ beforeX, beforeY ] = [ e.offsetX, e.offsetY ];
});
container.addEventListener('mouseup', e => {
[ afterX, afterY ] = [ e.offsetX, e.offsetY ];
});
container.addEventListener("click", (e) => {
if (beforeX === afterX && beforeY === afterY) {
window.alert("click");
}
});
六、解决safria/360 mac端浏览器白屏问题
https://blog.csdn.net/catchaobject/article/details/122301402