小编sha*_*avi的帖子

react Hooks useState Array

我试图在这里寻找重置useState数组值,但找不到对数组值的任何引用.

尝试将下拉值从初始状态更改为allowedState值.我在这里使用hooks方法使用--setStateValues设置值.如果我评论该行代码,它会显示下拉列表.我无法理解为什么我不能使用setStateValues方法来重置状态变量值.

我收到以下错误:"太多重新渲染.React限制渲染的数量,以防止无限循环".

如果你在这里看到错误,请帮忙.我会继续寻找.

    import React, { useState } from "react"; 
    import ReactDOM from "react-dom";

    const StateSelector = () => {   
    const initialValue = [
    { id: 0,value: " --- Select a State ---" }];

      const allowedState = [
        { id: 1, value: "Alabama" },
        { id: 2, value: "Georgia" },
        { id: 3, value: "Tennessee" }
        ];

      const [stateOptions, setStateValues] = useState(initialValue);  
      // initialValue.push(...allowedState);

      console.log(initialValue.length);

      setStateValues(allowedState); // Not sure why cannot I reset the state in here for an …
Run Code Online (Sandbox Code Playgroud)

reactjs react-hooks

12
推荐指数
3
解决办法
3万
查看次数

sed的perl替代品以拆分多个|

我能够在sed命令中完成此操作,但无法在perl中运行它。想要在靠近但没有任何空格或字母数字的管道字符之间添加空格。

输入==> a | 123 | ## ||||
预期输出==> a | 123 | ## | | | |

sed命令可以正常工作:

echo "a|123|##||||" | sed 's/\([^[:blank:][:alnum:]]\)|/\1 | /g'
Run Code Online (Sandbox Code Playgroud)

以上命令的输出==> a|123|## | | | |

在perl中,我无法正常运行

echo "a|123|##||||" | perl -pe 's/\([^[:blank:][:alnum:]]\)|/\1 | /g'
Run Code Online (Sandbox Code Playgroud)

与上述命令的输出

| 一个| | | 1 | 2 | 3 | | | #| #| | | | | | | | | 

regex unix perl

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

标签 统计

perl ×1

react-hooks ×1

reactjs ×1

regex ×1

unix ×1