美文网首页
使用react几个月之后,遇到的问题总结

使用react几个月之后,遇到的问题总结

作者: 子涵_520 | 来源:发表于2019-06-03 22:43 被阅读0次

    1.antd design,from表单的校验

    image.png

    如何表单里面的每个元素都单独判断的话,validator中可以自定义需要满足的条件,但必须要有一个 ‘return’,否则,代码执行到某一个判断,就不会走总的方法

    2.react中的props和state更新问题

    每次props和state中的值发生变化的时候,通常render里面都会重新渲染,更新数据,如果props和state中的值发生变化,render未发生变化,可以定义一个变量,在修改值得时候,同时更新该变量值,同步更新
    state:this.setState({changeFlag:!this.state.changeFlag})
    props:return{
    ...state,
    changeFlag:!state.changeFlag
    }

    3.service的请求方式传参问题

    (1)粗心导致,在service文件中,请求方式为“GET”方式,在url中带入参数,同时在body中也传参,本地访问的时候,不报错,也不调用,找了好久才发现的问题。
    get请求方式中如果传的是一个数组的话需要在访问传参时加一个‘repeat’
    export async function funcName(param){
    return request(...?${stringify(param,{ arrayFormat:"repeat"})},{
    method:"GET"
    })
    }

    4.table表格中的form表单的验证

    项目中,需要table表格中,有几个字段需要验证,保存时,非空,需要验证的字段是一个input输入框,可以自行输入,也可以点击选中弹出填补信息的模态框,在有未填满的input框时点击确定,会有form表单验证弹出的红色提示,若再次点击选择的时候,选择,单页面内容并无变化,


    image.png

    原本想用form.resetFields(),手动写的内容也会被清空,
    最后想到的方法就是,被点击的那一行进行this.refs.定义的ref的名称.form.resetFields(['columns1','columns2','columns3']),这样就不会影响其他行写入的内容(我是把这个table作为一个单独的模块,在父组件中使用)

    相关文章

      网友评论

          本文标题:使用react几个月之后,遇到的问题总结

          本文链接:https://www.haomeiwen.com/subject/mstbrqtx.html