使用React / Redux普遍在公里和英里之间切换

杰克·约瑟夫

当前,我有一个切换三元表达式的按钮,它可以正常工作,但是我无法想象为要显示数据的每一行创建一个单独的三元表达式是最佳实践。

有没有更好的方法可以在整个页面的公里数和英里数之间进行切换?我的redux商店包含相同距离的两个版本,这就是我到目前为止的内容:

const YourDistance = ({distanceInKms, distanceInMiles}) => {
const [isToggled, setToggled] = useState(false)

return (
    <div>
        { isToggled ? <h2>{distanceInKms}</h2> : <h2>{distanceInMiles}</h2> }
        <button onClick={() => setToggled(!isToggled)}>Convert</button>
    </div>
)};

如果有人有任何想法,我将不胜感激。

可爱的女皇

您可以将单位存储为redux状态。这样,您可以具有一个选择器函数,该函数根据状态中的距离和状态中的单位返回适当的值。您可以const distance = useSelector(selectDistance)随处拨打电话

选择器可能类似于:

const selectDistance = (state) => {
  const units = state.units;
  const {distanceInKms, distanceInMiles} = state.distance;
  return units === "miles" ? distanceInMiles : distanceInKms;
}

因此,我们仍然有一个三元组,但是现在它只是在一个地方,而不是在任何地方。

显然,您需要执行dispatch一项操作来切换单位。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用CardLayout在登录窗格和工作窗格之间切换是否很好?

如何使用Selenium和Java在多个帧之间切换

如何使用Aurelia在登录页面和应用程序之间切换

是否可以在Java中使用正则表达式在+和-之间切换?

尝试使用React在模态组件之间切换

使用CMake在GCC和Clang / LLVM之间切换

如何使用onClick函数在jQuery中添加和删除相同的类之间进行切换

如何使用libGDX在纵向和横向模式之间切换?

如何使用addClass和removeClass在类之间切换?

如何正确使用switchLatest在搜索结果和tableview的空白状态之间切换?

在React中的页面之间切换

如何在React.js中在摄氏和华氏之间切换?

在React中在暗模式和亮模式之间切换

如何使用Selenium和Python在iframe之间切换?

如何使用户在(管理员和用户)之间切换模式以进行评论/发布

使用UISegmentedControl在UIViewController之间切换

使用CSS在combox和单选按钮之间切换

使用固定div使幻灯片在底部和顶部之间切换,而不是向左或向右切换

使用UISegmentedControl在视图之间切换

使用按钮在可见和隐藏之间切换

使用 JQuery 在视图之间切换

React/Redux - 在路由之间切换时,内容渲染有延迟

React:在可见和不可见之间切换两个组件

如何修复按钮以使用 react 和 javascript 在禁用和启用状态之间切换?

在 anaconda 虚拟环境和使用 activate/deactivate/remove 之间切换

使用javascript在图像之间切换

使用 Redux 切换块菜单?

使用 actionButton 在可绘制条形图和绘制柱形图之间切换

使用 1 个键盘快捷键在预览之间切换和切换?