reactjs - 检索对象的值
问题描述
嗨,我有一个对象如下:
const state = {
working: "I am currently working",
studying: " I am currently studying",
}
如果状态发生变化,我希望能够从此对象中检索文本“我正在工作”或“我正在学习”。
我的代码目前如下:
const currentState = "working";
{currentState === "working" ? state.working : state.studying}
我想知道是否有更好的方法可以在不使用三元组的情况下检索文本,我也不介意使用数组。
解决方案
您可以在组件外部创建一个const
并在组件中使用布尔状态:
const message = {
working: 'I am currently working',
studying: 'I am currently studying',
}
export function App() {
const [working, setWorking] = useState(false) // or true
return (
<>
<div>{working ? message.working : message.studying}</div>
<button onClick={() => setWorking((w) => !w)}>Click</button>
</>
)
}
推荐阅读
- c++ - 保留时通过实现定义的因素强制增加向量容量
- java - Cors 错误曾经在 Heroku 中部署 Angular 和 SpringBoot 应用程序
- python - 解包列表项中的字符串文字有效,但不适用于字符串文字本身
- c++ - 大括号初始化和复制初始化动态分配的对象之间的区别
- mongodb - 尝试按字母顺序排序时,mongodb排序功能不起作用
- pyspark - 将 Pyspark Dataframe 中的推断模式持久保存到 S3 上的文件
- javascript - 从javascript中的数组中过滤掉不重复的值
- version-control - XCode 12 裁剪分支名称
- javascript - Javascript loop through an array and return the object(s) that end a streak of values
- ios - 如何在 MLMultiarray 元素上应用 Sigmoid?