繁体   English   中英

修剪未定义的对象属性

[英]trim object property of undefined

我有这个功能来验证我的表单字段

export default value => {
  let errors = {}
  if (!value.name) {
    errors.name = 'username is required'
  }
  return errors
}

我如何修剪价值? 上面的代码不这样做。 使用Object.keys迭代和修剪所有属性值是个好主意吗?

这是我的解决方案

export default value => {
value = Object.entries(value).reduce(
    (null, [key, value]) => ({ [key]: value.trim() }),
    {}
  )
      let errors = {}
      if (!value.name) {
        errors.name = 'username is required'
      }
      return errors
    }

是的,你可以使用 Object.keys

    export default value => {
    Object.keys(value).forEach(val => {
     value[val] = value[val].trim();
    })
  let errors = {}
  if (!value.name) {
    errors.name = 'username is required'
  }
  return errors
}

修剪对象意味着您的问题不清楚。 我认为您的功能可以使用表单数据进行验证。

 var profile = { 'first_name': 'revansiddh', 'last_name': '', 'address': 'Solpaur', 'pincode': '413224' } function validate(obj = {}) { var error = {} Object.keys(obj).forEach((m) => { if (obj[m] == '') { error = { ...error, [m]: m + 'requireed' } } }) return error } console.log("form validation", validate(profile))

是你想要达到的吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM