小编use*_*074的帖子

如何在React中清除动态形式的输入值

我有一个动态形式作为通过基于类的组件生成的功能组件。我要设置重置按钮,以清除输入字段值并将状态设置为null数组。

完整的代码在这里可用:https//codesandbox.io/s/beautiful-archimedes-o1ygt

我想要一个重置按钮,清除所有输入值并将Itemvalues数组初始化为null。即使我将值设置为null,也不会清除输入字段。

但是,我面临的问题是,由于它是动态表单和功能组件,因此对于每个单独的表单字段都没有预定义的状态,因此很难将值设置为null。有人可以帮忙吗,我长期以来一直坚持

javascript reactjs

13
推荐指数
1
解决办法
675
查看次数

如何更新 useEffect() 挂钩按钮单击的值

我有一个功能组件,并在其中创建了一个按钮。我还使用“Use_effect()”挂钩。我的主要是重新渲染功能组件,在单击按钮时更新 use_effect() 挂钩。

const Emp_list = (props) => {
  useEffect(() => {
    props.getList(props.state.emp);
  }, []);

    return (

      <div>
        {props.state.emp.map((val ) =>   
               {val.feature_code}
               {val.group_code}
    <button onClick = {() => props.removeEmpFromList(val.feature_code)} > Remove </button>

        <EmpForm empList={props.state.emp} 
                    onChangeText = {props.onChangeText}
                   />
        </div>

        <button onClick=  {() => props.getdata (props.state)}>Get Names</button>
        <p> 
      </div>

    );

  };

export default Emp_list;
Run Code Online (Sandbox Code Playgroud)
    removeEmpFromList = (i) => { 
      const remaining = this.state.emp( c => c.feature_code !== i)
      this.setState({
      emp: [...remaining]

        })

      }
Run Code Online (Sandbox Code Playgroud)

当我单击“删除”按钮时,它基本上将从列表中删除该员工。该函数removeEmpFromList将更新状态。功能组件EmpForm基本上显示所有员工的列表。

所以我想重新渲染页面,以便更新 useEffect() 挂钩中的状态值。因此,当重新渲染时再次调用 …

javascript reactjs

6
推荐指数
1
解决办法
6199
查看次数

类型错误:无法在反应中读取未定义的属性“reduce”

我有一个表单,我要求用户输入几个字段的字段值,将字段值存储在状态中并以自定义格式显示状态值。

所以,我有几个输入字段和一个提交按钮:

<button onClick={this.handleSubmit}>Submit</button>
         {
           this.state.credentials &&
           //<Credentials value={this.state}/>
            <Credentials value={JSON.stringify(this.state, undefined, 2)} />
         }
Run Code Online (Sandbox Code Playgroud)

Credentials 函数将组件的状态转换为 JSON 格式:

const Credentials = ({value} ) => {
    return <pre>{formatState(value)}</pre>;
}
Run Code Online (Sandbox Code Playgroud)

formatState 函数将基本上操纵状态值并以我想要的方式显示它们:

function formatState(state) {
  console.log("hi")
  console.log(state);
    const output = state.groups.reduce((final, s)=> {
      console.log(output)
      const values = Object.keys(s).reduce((out, o)=> {
        out[o] = s[o].map(k => Object.values(k))
        return out;
        }, {})
        final =  {...final, ...values}
        return final;
      }, {})
      console.log(output) 
  }
Run Code Online (Sandbox Code Playgroud)

状态如下所示:

{
  "groups": [
    {
      "typeA": [
        {
          "name": "abc"
        },
        { …
Run Code Online (Sandbox Code Playgroud)

reduce json state reactjs

5
推荐指数
1
解决办法
2万
查看次数

如何在react中点击提交按钮时在同一页面显示状态

我在反应中制作了一个表单,它接受用户的输入并将其存储在状态中。现在,我想在用户单击 React 中提交按钮下方输入字段中的“提交”按钮时显示状态值。我刚开始反应。

javascript reactjs

4
推荐指数
1
解决办法
2893
查看次数

在反应中单击按钮时调用功能组件

我有一个功能组件,里面有一个按钮。我想在单击该按钮时调用一个功能组件。

当我们点击提交按钮时,预览按钮出现,当用户点击预览按钮时,预览功能组件被调用。

const Form =(props)=>{

handlePreview=(e)=>{
    e.preventDefault();

    return <Preview/>
  }

return(
<input name="email" type="text"/>
<button type="submit" onClick={props.handleSubmit}>Submit</button><br/>
  {props.render&& 
   <button type="submit" onClick={handlePreview}>Preview</button>
  }

)
}
Run Code Online (Sandbox Code Playgroud)

当我单击“提交”按钮时,会显示预览按钮,但是当我单击“预览”按钮时,它不会导航到<Preview>功能组件

javascript reactjs

3
推荐指数
1
解决办法
6852
查看次数

当有多个按钮时如何知道点击了哪个按钮(React)

我在功能组件中有一个表。表格中的每一行在该行的末尾都有一个编辑按钮。当我单击“编辑”按钮时,它会将更改应用于所有编辑按钮。我如何知道单击了哪个按钮并仅对其应用更改?(我有很多行,所以我不能为每个按钮创建一个状态)

这是我的代码的链接

javascript reactjs

1
推荐指数
1
解决办法
5140
查看次数

将状态数组值转换为键值对

我有一个状态对象数组。我想将数组内的值转换为键值对

因此,我的状态如下所示:

0: {emp_code: "a001", company_code: "company_a", name: "abx", details: Array(3), details_dtypes: Array(3)}
1: {emp_code: "b002", company_code: "company_b", name: "xbz ", details: Array(2), details_dtypes: Array(2)}
//and so on adding other values to the array

Run Code Online (Sandbox Code Playgroud)

我想将emp-code和company_code转换为键值对,并像JSON对象一样显示;因此,JSON输出如下所示:

{
emp_and_company:
{
  "company_a" : ["a001","a002"],
  "company_b" : ["b002","b003"]
}
}

Run Code Online (Sandbox Code Playgroud)

所以我只想将company_code作为键并将值作为emp_code

javascript json state reactjs

0
推荐指数
1
解决办法
92
查看次数

标签 统计

reactjs ×7

javascript ×6

json ×2

state ×2

reduce ×1