reactjs - 使用 let 改变视图的不透明度
问题描述
我正在使用 React Native 并进行了设置,因此当 TouchableOpacity 被触摸时,另一个 TouchableOpacity 更改的不透明度和被触摸的 TouchableOpacity 具有更高的不透明度。寻找如何修复或改进建议。
let opacityEnglish= true ? 1 : 0.5
let opacitySpanish = false ? 1 : 0.5
const languageSetHandler = (language) => {
if(language == 'English') {
opacityEnglish = true;
opacitySpanish = false;
}
else if (language== 'Spanish') {
opacitySpanish = true;
opacityEnglish = false;
}
setLanguage(language);
}
<TouchableOpacity
style={styles.OtherStyles, {opacity: opacityEnglish}} onPress={() => languageSetHandler('English')}>
<Text>English</Text>
<Text>Has been selected</Text>
</TouchableOpacity>
有人建议不要对 let 使用布尔值。从 TouchOpacity 外部更改不透明度的任何替代方法?
解决方案
let opacityEnglish= true ? 1 : 0.5
这将始终解析为 1,因为true
始终为真。
我认为您想要更多类似的东西:
let opacity = language === 'english' ? 1 : 0.5
;
推荐阅读
- cxf - Log soap request and response using apache-cxf
- angular - Angular 库(具有功能导入支持 import {a1} from 'my-lib/1a' )
- ios - WKWebView: Use same delegate code (WKNavigationDelegate) in multiple view controllers
- python - 如何创建批量剪切音频的方法?
- python - numpy nanmean () 'float' object has no attribute 'dtype' error
- vb.net - 使用 StreamWriter 完全覆盖文本文件
- reactjs - Is Component waiting for a promise from Redux Action Creator Anti-Pattern?
- node.js - 从 mongodb 数据库中检索数据时在我的控制台中获取 null
- tfs - TFS 层次结构的最佳实践
- python - 不同电脑上的不同数字