【发布时间】:2023-01-09 19:09:45
【问题描述】:
我有一些基本相同的元素,我正在尝试重构以使其更整洁。主要区别在于它们引用相似格式的不同变量。
例如:
(!editingTelephone && telephone === '') && 'No landline number added'}
和
(!editingMobile && mobile === '') && 'No mobile number added'
我希望能够将诸如“电话”或“移动”之类的字符串传递给一个函数,以构建将填充所有相关变量名称和内容的整个组件。
我的努力是动态构建变量名,以便它们正确调用......
我知道 eval() 在通过字符串构造变量名时可以使用,但我也知道从安全角度来看,这是被警告不要使用的......我只是想知道是否还有其他更安全的东西我可以使用,或者在这种情况下,从安全角度来看,在 React 中使用是否合适,因为我没有完全暴露任何重要的东西?
【问题讨论】:
-
主要由"Variable" variables in JavaScript回答但是,我真的不明白你为什么要在这里做任何类型的动态变量,因为你有三需要编辑的东西,不仅仅是
mobile或telephone。也许只是创建一个函数(editing, value, message) => (!editing && value === '') && message然后将值提供给它。无需动态构建代码或尝试通过查找通过名称神奇地访问事物。
标签: javascript reactjs variables substring eval