React:TypeError:无法读取未定义的属性“value”
2019-02-28
934
我从 ReactJS 中的表单获取值,但同时当我单击提交按钮时,它给出错误
TypeError: 无法读取未定义的属性“值”
。有人可以检查我可能遇到什么问题吗?
谢谢
import React, { Component } from 'react'
import { getFunName } from './helpers';
class StorePicker extends Component {
myInput=React.createRef();
goToStore=event=> {
// 1- Stopping form from submitting
event.preventDefault();
// 2 - Getting value from Input
const storeName = this.myInput.value.value ;
// 3 - Change the page to /store/whatever-you-entered
this.props.history.push(`/store/${storeName}`)
}
render() {
return (
<form className="store-selector" onSubmit={this.goToStore}>
<h2>Please Enter Enter a Store</h2>
<input type="text" required placeholder="Store Name" ref={this.myInput} defaultValue={getFunName()}/>
<button type="submit">Visit Store</button>
</form>
)
}
}
export default StorePicker;
2个回答
如果您使用 refs,则应该是这样的:
const storeName = this.myInput.current.value;
rrd
2019-02-28
此
import React, {Fragment} from 'react';
import {getFunName} from "../helpers";
class StorePicker extends React.Component{
myInput = React.createRef();
goToStore = event =>{
//1. Stop the from submitting
event.preventDefault();
//2. get the text from that input
const storeName = this.myInput.current.value;
//3. change the page to /store/store-name
this.props.history.push(`/store/${storeName}`);
}
render(){
return(
<form className="store-selector" onSubmit={this.goToStore}>
<h2>Please Enter a Store</h2>
<input type="text" ref={this.myInput} required placeholder="Store Name"/>
<button type="submit">Visit Store</button>
</form>
)
}
}
export default StorePicker;
的完整代码
santosh devnath
2019-09-03