Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何将输入值更改为下标?_Reactjs - Fatal编程技术网

Reactjs 如何将输入值更改为下标?

Reactjs 如何将输入值更改为下标?,reactjs,Reactjs,我希望我的handleChange函数将输入值更改为下标。在React中如何实现这一点 class App extends Component { state = { equation: "" }; handleChange = event => { this.setState({ [event.target.name]: event.target.value }); }; render() { const { equation } = th

我希望我的handleChange函数将输入值更改为下标。在React中如何实现这一点

class App extends Component {
  state = {
    equation: ""
  };

  handleChange = event => {
    this.setState({ [event.target.name]: event.target.value });
  };

  render() {
    const { equation } = this.state;
    console.log(equation);
    return (
      <div>
        <input onChange={this.handleChange} value={equation} name="equation" />
      </div>
    );
  }
}
类应用程序扩展组件{
状态={
方程式:“”
};
handleChange=事件=>{
this.setState({[event.target.name]:event.target.value});
};
render(){
常数{方程}=这个状态;
console.log(方程);
返回(
);
}
}

正则表达式选择+捕获数字字符,并替换为相应的下标html实体:

  handleChange = event => {
    const formattedValue = event.target.value.replace(/(\d)/g, '&#832$1;');
    this.setState({ [event.target.name]: formattedValue });
  };

正则表达式选择+捕获数字字符,并替换为相应的下标html实体:

  handleChange = event => {
    const formattedValue = event.target.value.replace(/(\d)/g, '&#832$1;');
    this.setState({ [event.target.name]: formattedValue });
  };

@ZohirSalak读了一点,他们在render方法的顶部进行解构,这样你就不必为
方程的每个引用键入
this.state
。另外,
handleChange
方法也很好,它使用了computed属性,因此它成为了一个可重用的方法,而不是硬编码的名称。现在,他们可以添加100个不同(或更多/更少)的输入,并使用相同的方法来处理它。您必须找到或编写一个将字母转换为下标html实体的方法(一个简单的映射就足够了)。目前,
sub
sup
方法(返回包装在受尊重的标记中的字符串)已被弃用,我似乎找不到这方面的现代标准对不起,我的信息有误。字符串方法
.sub
.sup
已被弃用,而不是HTML标记。所以只要使用标签,你就可以很好地去做了(如果输入可以渲染的话)。我试图在输入中使用子标签,但它似乎不起作用。函数的想法似乎更好。它似乎是在输入标记()中“呈现”html的唯一方法,因此子标记在这里可能没有帮助,听起来确实需要下标字母实体instead@ZohirSalak读一读,他们在render方法的顶部进行分解,这样您就不必键入
this.state
,对
方程的每个引用都进行分解。另外,
handleChange
方法也很好,它使用了computed属性,因此它成为了一个可重用的方法,而不是硬编码的名称。现在,他们可以添加100个不同(或更多/更少)的输入,并使用相同的方法来处理它。您必须找到或编写一个将字母转换为下标html实体的方法(一个简单的映射就足够了)。目前,
sub
sup
方法(返回包装在受尊重的标记中的字符串)已被弃用,我似乎找不到这方面的现代标准对不起,我的信息有误。字符串方法
.sub
.sup
已被弃用,而不是HTML标记。所以只要使用标签,你就可以很好地去做了(如果输入可以渲染的话)。我试图在输入中使用子标签,但它似乎不起作用。函数的想法似乎更好。它似乎是在输入标记()中“呈现”html的唯一方法,因此子标记在这里可能没有帮助,听起来确实需要下标字母实体