Javascript React本机,redux函数在更新后未变为原始状态

Javascript React本机,redux函数在更新后未变为原始状态,javascript,reactjs,react-native,react-redux,Javascript,Reactjs,React Native,React Redux,我创建了一个函数,当用户向购物车添加项目时,在每个屏幕下查看购物车详细信息,当用户删除功能时,购物车详细信息将再次隐藏,但当我从购物车中删除项目时,购物车详细信息不会隐藏,有人能告诉我出了什么问题吗,下面是我的代码 减速器 if (action.type === SHOW_CART) { let addedItem = state.addedItems; if (addedItem === 0) { console.log(addedItem); ret

我创建了一个函数,当用户向购物车添加项目时,在每个屏幕下查看购物车详细信息,当用户删除功能时,购物车详细信息将再次隐藏,但当我从购物车中删除项目时,购物车详细信息不会隐藏,有人能告诉我出了什么问题吗,下面是我的代码

减速器

 if (action.type === SHOW_CART) {
    let addedItem = state.addedItems;
    if (addedItem === 0) {
      console.log(addedItem);
      return {
        ...state,
        show: state.showCart,
      };
    } 
  } 


const initialstate = {
  showChart: false,
  addedItems: [],
}
这是我的redux代码,我在其中执行该函数,addItems是我的cart,它是空白数组

行动

export const showCart = (id) => {
  return {
    type: SHOW_CART,
    showCart: true,
    id,
  };
};
这是我的行动

查看车

  {this.props.show ? (
          <View style={styles.total}>
            <Text style={styles.totaltext}>Total:</Text>
            <Text style={styles.priceTotal}>{this.props.total}</Text>
            <View style={styles.onPress}>
              <Text
                style={styles.pressText}
                onPress={() => RootNavigation.navigate("Cart")}
              >
                View Cart
              </Text>
            </View>
          </View>
        ) : null}
{this.props.show(
总数:
{this.props.total}
RootNavigation.navigate(“购物车”)}
>
查看购物车
):null}
这是我的查看购物车详细信息,当用户将项目添加到购物车时,我会在其中显示购物车详细信息
有人能帮忙吗

您应该比较长度,您当前正在直接比较数组,因此它也会转到错误路径,所以请先更改该路径

if (action.type === SHOW_CART) {
    let addedItem = state.addedItems;
    if (addedItem.length === 0) {
      console.log(addedItem);
      return {
        ...state,
        show: state.showCart,
      };
    } else {
      return {
        ...state,
        show: action.showCart,
      };
    }
  }
鉴于

 {this.props.show && this.props.items.length >0 ? (
          <View style={styles.total}>
            <Text style={styles.totaltext}>Total:</Text>
            <Text style={styles.priceTotal}>{this.props.total}</Text>
            <View style={styles.onPress}>
              <Text
                style={styles.pressText}
                onPress={() => RootNavigation.navigate("Cart")}
              >
                View Cart
              </Text>
            </View>
          </View>
        ) : null}

const mapStateToProps = (state) => {
  return {
    total: state.clothes.total,
    show: state.clothes.show,
    items: state.clothes.addedItems,
  };
};
{this.props.show&&this.props.items.length>0(
总数:
{this.props.total}
RootNavigation.navigate(“购物车”)}
>
查看购物车
):null}
常量mapStateToProps=(状态)=>{
返回{
总计:state.counts.total,
秀:state.counts.show,
项目:state.Cloth.addedItems,
};
};

这个问题有点不清楚。您在哪里从购物车中“删除”项目?在购物车组件中,我也应该添加它吗?您看到console.log吗?当我添加项目时,yup函数使条件为true,但在删除时没有使其为false show:state.showCart应该是show:state.show也更改它不起作用:/,在初始状态下,如果要使条件为false,则完成。只需要在View cart中添加this.props.itmes.length>0,现在我需要从cart中删除组件,我的长官说通过分派函数Iscart=true来执行,现在我需要弄清楚如何执行