Mic*_*han 1 javascript dispatch reactjs react-redux
我有以下React视图/渲染功能:
let BaseSalaryView = ({ counter, onChange }) => (
<div>
<input type="text"
placeholder="Annual Salary"
value={counter}
onChange={() => onChange(counter)} />
<span>Try: {counter}</span>
</div>
)
Run Code Online (Sandbox Code Playgroud)
我试图找出如何将刚改变的值传递到我的onChange调度处理程序中.
我尝试了以下但是它们都是未定义的.
onChange={() => onChange(this.input.value)}>
onChange={() => onChange(input.value)}>
onChange={() => onChange(value)}>
Run Code Online (Sandbox Code Playgroud)
const mapDispatchToProps = (dispatch) => {
return {
onChange: (counter) => {
dispatch(baseSalaryChange(counter)) // Need the input v alue here
}
}
}
export function baseSalaryChange(baseSalary) {
return { type: BASE_SALARY_CHANGED, baseSalary }
}
Run Code Online (Sandbox Code Playgroud)
调用操作,但coutner始终设置为初始值.
OMG经过2个小时的挣扎,2分钟后,我发布了问题,我弄明白了.
需要在onChange的内联函数中引入一个参数,该函数将设置为event刚刚发生的那个.然后我可以event.target从那里访问:
onChange={(event) => onChange(event.target.value)} />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1734 次 |
| 最近记录: |