reactjs - React Native 复选框句柄
问题描述
我有一个文件中的国家代码,我这样渲染它,它完美地返回所有国家名称和代码。
<TouchableOpacity
style={st.oneCode}
onPress={selectItem}>
<View
style={[
st.filterCheckMarkWrapper,
check === false &&
st.filterCheckmarkInactiveColor,
]}>
{check === true && (
<View style={st.filterCheckmark} />
)}
</View><Text style={st.CodeText}>
{item.countryName}: +{item.phoneCode}
</Text>
</TouchableOpacity>
但是当检查为真时,所有文本都已检查,我该如何解决?
解决方案
check
您可以在 Country 对象中添加一个checklist
或属性,而不是使用变量/状态。checked
注意:我只解释第二个。
因此,您必须向checked
Country 对象添加属性。
那么您的来源将是:
<TouchableOpacity
style={st.oneCode}
onPress={selectItem}>
<View
style={[
st.filterCheckMarkWrapper,
item.checked === false &&
st.filterCheckmarkInactiveColor,
]}>
{item.checked === true && (
<View style={st.filterCheckmark} />
)}
</View><Text style={st.CodeText}>
{item.countryName}: +{item.phoneCode}
</Text>
</TouchableOpacity>
在您的onPress
活动中,您必须切换checked
属性。
例如:
function selectItem(item: Country) {
item.checked = !item.checked;
//your other works
}
推荐阅读
- c# - Azure Devops - 按代理池 ID 获取版本定义
- ruby-on-rails - 允许 eq 比较中的数组内容是 rspec 测试中的任何内容
- fogbugz - 如何获取登录用户ID
- google-apps-script - 如何将触发器/项目从一个电子表格复制到另一个?
- mongodb - foo: { $gt: "A", $lt: "Z"}; 我如何在 scala 驱动程序中写这个?
- python-2.7 - 简单的 Ansible 模块无法运行并出现“不支持的参数”错误。大概是什么傻事
- umbraco - Umbraco 8 搜索功能
- c# - 在 VS2019 中使用 .Net Core 格式的项目文件时如何自动增加包版本修订号
- html - 内联矢量图像包裹在表格单元格内
- c# - Unity C# - 在完成之前停止执行 IJobParallelFor