【发布时间】:2020-07-26 22:21:33
【问题描述】:
react(javascript) 初学者在这里,没有返回语句的函数不应该给出 'undefined' 吗?在函数内部调用另一个函数如何仍然需要返回语句(在其他地方没有找到这个信息)?
例如,这段代码在有和没有返回语句的情况下工作并且没有给出'undefined'的原因是什么?
function TodoForm({ addTodo }) {
const [value, setValue] = useState('');
const handleSubmit = e => {
e.preventDefault();
//for example this function does not have a return statement and still works
// even if i put return statement it will still work
// like this return addTodo(value) ?
addTodo(value);
setValue('');
}
console.log(value);
return (
<form onSubmit={handleSubmit}>
<input
type="text"
className="input"
value={value}
placeholder="Add Todo..."
onChange={e => setValue(e.target.value)}
/>
</form>
)
}
【问题讨论】:
-
您能否提供一些背景信息 - 您预期会发生什么?你来自不同的语言吗?我之所以问,是因为我不知道 return 语句的不同行为,除非我误解了这个问题:)。
-
函数可以在没有
return声明的情况下影响外部环境,这就是你的函数正在做的事情。
标签: javascript html reactjs forms function