这是我的第一个React项目,所以如果这是一个基本问题的话,提前感谢你的耐心。我有两个范围输入,当这些范围输入被移动时,我试图执行计算并更新内容。下面是我的文件:
index.tsx
import * as React from 'react'
export default function Index() {
let hours = React.useState(2)
const setHours = (newHours) => {
hours = newHours;
setPrice(hours, price);
}
let miles = React.useState(18)
const setMiles = (newMiles) => {
miles = newMiles;
setPrice(hours, price);
}
let price = React.useState(0)
const setPrice = (hours, miles) => {
price = hours * 6.00 + miles * 0.32
}
setPrice(hours, miles);
return (
<div>
<p className="font-medium">Estimated fee of ${price} for a {hours} hour, {miles} mile trip.</p>
<input onChange={(e) => setHours(e.target.value)} value={hours} type="range" min="1" max="24" />
<input onChange={(e) => setMiles(e.target.value)} value={miles} type="range" min="1" max="200" />
</div>
);
}
不幸的是,这会引发警告“函数作为React子项无效”。
2条答案
按热度按时间thigvfpy1#
这不是使用useState挂接的方式,如果您需要该值,则应使用以下代码:
const [hours, setHours] = useState()
那么您可以使用hours,就像在上面的示例中使用的那样,现在您给出了一个
useState()
挂钩作为输入值,这肯定会导致您所遇到的错误。请跟随this link查看更多关于
useState
挂钩信息ftf50wuq2#