【发布时间】:2020-09-30 08:22:48
【问题描述】:
我有一个组件UsernameInput,它通过redux store 进行管理。
我想在 onCut 事件触发时获取输入值。
import React from 'react'
import connect from 'react-redux'
import {validateUsername} from '../actions'
const UsernameInput = ({username, validateUsername}) => {
return (
<div className="form-group">
<input type="text" className="form-control"
onChange={e => validateUsername(e.target.value)}
onPaste={e => validateUsername(e.clibboardData.getData('Text'))}
onCut={e => validateUsername(e.currentTarget.value)}
defaultValue={username}
/>
</div>
);
}
export default connect((state) => state.validateUsername, {validateUsername})(UsernameInput);
即如果输入的值为“blablabla”,并且在切割整个文本后validateUsername函数应该用空字符串调用,如果输入的一半被切割,那么应该用参数调用它“废话”。
onCut e.currentTarget.value 正在返回剪切前输入字段的值,但我希望它返回实际输入值。
怎么做?
【问题讨论】:
-
为什么不将输入值存储在一个状态中?
-
@johannchopin 我正在使用 redux,并分派输入值。
标签: javascript reactjs forms