javascript - 如何使用 react/react native 在单击时删除或隐藏多个组件
问题描述
https://res.cloudinary.com/catify/image/upload/v1588704903/hcnqjp7okfykkb3az2v3.jpg
您好,我正在尝试创建一个猜谜游戏的项目,如图所示,我有多个字母组件,答案需要一些字母,而有些则不需要,我需要一个按钮,当我点击它时,它会删除或隐藏答案不需要的组件,我如何使用 react 或 react native 来做到这一点?
我将字母保存在一个数组中,然后使用带有自定义组件的 Map 渲染它们,该组件的样式看起来像照片,我在 react native 中执行此操作,但我认为在 react 中应该是相同的,欢迎提供任何帮助,谢谢。
return (
<Animated.View style={{flex: 1}}>
{Letters.forEach(element => {
<LetterCard letter={element} />;
})}
<Button
title="eliminar"
onPress={() => {
eliminar;
}}
/>
</Animated.View>
);
解决方案
您可能需要一个状态列表或某个地方的列表,其中包含哪些字母是需要的,哪些不是,以及一个布尔值来确定您是显示所有字母还是只显示您需要的字母。
切换显示/隐藏不需要的字母的按钮只会切换 requiredOnly 状态。
this.state={
neededLetters = [], //array of needed letters
neededOnly = false,
}
{neededOnly ?
neededLetters.forEach(element => {
<LetterCard letter={element} />;
}) :
Letters.forEach(element => {
<LetterCard letter={element} />;
})}
<Button
title="eliminate"
onPress={() => {
this.setState(prevState => ({
neededOnly: !prevState.neededOnly
}));
/>
推荐阅读
- react-native - 在 WebStorm 中使用 React Native 为调试器附加 Chrome 浏览器时出现问题
- angular - Angular Injectable 装饰器 - 预期 0 个参数,但得到 1 个
- vba - URLDownloadToFile 无法正常工作
- c# - 用 C# 在 FTP 服务器上创建 PDF
- c# - 如何使用多种简单类型 PostAsync()?
- codenameone - 访问手机设置:codeName one
- angular - Angular 5在http get请求中正确传递标头
- javascript - 声明为常量的数组仍在 javascript 中进行操作
- ios - 如何使用 UIGraphicsGetCurrentContext 弧在饼图的每个部分上添加点击手势
- mysql - 根据表 A 的列值的变化在表 B 中插入 SQL 数据