reactjs - 渲染后更新值
问题描述
我正在这样做:
const changePrice = (event) => {
let {value} = event.target;
priceBook = JSON.parse(value).price
}
return (
<div className="container">
<select onChange={changePrice}>
{planes.map((book, index) => {
return <option key={index} value={JSON.stringify(book)}>{book.pages}</option>
})}
</select>
<span>Price {priceBook} </span>
</div>
);
它很好地加载了选择器值,但是当我更改值时,我应该更新视图中的价格值,这不会发生。
解决方案
要在基于函数的组件中实现有状态逻辑,请使用hooks
:
const [priceBook, setPriceBook] = useState('such empty')
const changePrice = (event) => {
let {value} = event.target;
const priceBook = JSON.parse(value).price
setPriceBook(pricebook)
}
return (
<div className="container">
<select onChange={changePrice}>
{planes.map((book, index) => {
return <option key={index} value={book.price}>{book.pages}</option>
})}
</select>
<span>Price {priceBook} </span>
</div>
);
推荐阅读
- android - Flutter iOS:用于签署可执行文件的身份不再有效
- javascript - 单击立即购买链接后,条带客户端集成未生效
- spring - 用 Spring Transaction 包装一个 Callable 和 Runnable
- api - 如何通过adobe(acrobat)以编程方式将pdf文件转换为excel文件格式?
- powershell - Powershell:Get-ChildItem 路径中的多个通配符
- javascript - ServiceWorker 通知单击 - 如何刷新页面并跳转到锚链接?
- javascript - 努力使用 jQuery 更改来显示特定的 div/h2
- javascript - 为什么表单主体在 PUT 请求中返回 null?
- ios - 2020 年 4 月 Fabric Crashlytics 消失后,如何在 iOS 中跟踪 OOM 关闭?
- python - Python - 从列表创建字典的函数