【问题标题】:How to remove all props in react native?如何删除反应原生中的所有道具?
【发布时间】:2018-09-17 10:45:21
【问题描述】:

我正在使用 react native woocommerce API 来构建一个 Android 应用程序。我已经完成了所有主要功能,但是当我结账成功时,我无法从购物车中删除所有产品。

const { cart } = this.props;

此道具由产品的名称、图片、数量、价格和产品编号组成。

我试过了

const { cart } = this.props;
          cart.forEach(function(element) {
           delete element.id;
           delete element.price
           //and all elements
          });

这会删除属性,但是当我打开购物车页面时,会显示未定义的对象错误。如何删除对象购物车本身。

【问题讨论】:

  • props 只能从父方清除

标签: javascript reactjs object react-native javascript-objects


【解决方案1】:

react 中的 props 是只读的,这意味着它们不能被删除,但是你可以通过在 state 中设置 cart prop 然后更新 state 来实现你想要实现的功能。 您可以执行以下操作:

constructor(props){
  super(props);
  this.state = {
    cart: props.cart
  }
}

然后你可以使用 setState 来更新状态。

this.setState({cart: UpdatedCart}):

【讨论】:

    【解决方案2】:

    你不能删除 react 中的 props。 react 组件的 props 是不可变的,不应该被组件更改。

    如果您需要在本地处理数据,您可以使用组件的状态,或者更好地创建 prop 数据的本地副本。

    【讨论】:

    • 你能帮帮我吗
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-02
    • 1970-01-01
    • 2021-08-27
    • 1970-01-01
    • 2021-08-14
    相关资源
    最近更新 更多