reactjs - 在 useState 中包装一个函数
问题描述
“getListViewSetting
为 useState 包装一个函数”,这是什么意思?
const [isListView, setIsListView] = useState(
getListViewSetting(location?.pathname?.replace('/', ''), true),
);
解决方案
无论谁(或任何工具)说这可能意味着你要做:
const [isListView, setIsListView] = useState(
() => getListViewSetting(location?.pathname?.replace('/', ''), true)
);
如果您将一个函数传递给useState
,那么 react 将只调用该函数一次以确定初始值。如果getListViewSetting
价格昂贵,那可以提高性能,因为您拥有的代码将需要在每次渲染时调用它,即使该值在第一次渲染时无用。
推荐阅读
- c++ - Qt WiFi网络扫描
- spring-boot - 无数据源的 Flyway 配置
- python - 如何在python中将数据放入具有当前日期的新创建的文件夹中
- linux - 用零替换小于某个阈值的数字
- python - 使用 python 将文件转换为 BytesIO 对象
- ionic-framework - 离子离子菜单边框半径没有改变
- google-chrome-extension - 有没有办法通过扩展隐藏 Chrome 浏览器标签?
- swift - 存储对 UIImage 的引用
- c# - Azure Function V2 中的 JWT 验证
- html - 使用 CSS 动画构建的文本滑块未在移动设备上显示