為什麼我不能在函數中設置我的構造函數?

和哈

我想設置一個構造函數來定義產品的默認值,但它似乎不起作用。我不知道是什麼問題,有人知道請幫助我!非常感謝!

產品.js:

import React from "react";
import Modal from 'react-modal';

function Products(props) {
 var data = Array.from(props.products);
constructor(){
  super(props)
  this.state={
    product:null
  }
}
  return (
    <div>
      <ul className="products">
        {data.map((product) => {
          return (
            <li key={product._id}>
              <div className="product">
                <a>
                  <img src={product.image} alt={product.title} />
                  <p>{product.title}</p>
                </a>
                <div className="product-price">
                  <div>{product.price}</div>
                  <button onClick={() => props.addToCart(product)} className="button primary">Add to Cart</button>
                </div>
              </div>
            </li>
          );
        })}
      </ul>
    </div>
  );
}

export default Products;

更清晰觀察的沙箱鏈接:https : //codesandbox.io/s/redux-shop-cart-forked-19huj?file=/ src/components/ Products.js

哈比爾

您正在使用React functional component並且functional component不支持constructor您需要useState用於加載您的props.products但您也可以使用useEffect代替constructor來執行初始 api 調用或某些操作。

const [data, setData] = useState(props.products);

useEffect(()=>{

  // here initial your data with default value

}, [])

使用效果的更多細節

在這裡,我在Codesandbox 中更新您的代碼

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

為什麼我的 javascript reduce 函數被跳過了?

為什麼我得到 'Future<dynamic>' 而不是函數中的返回值?

為什麼 VS 為我的析構函數標記 C26432?

為什麼在 Python 中用參數調用這個“構造函數”?

為什麼我不能在 tkinter 綁定中調用函數?

為什麼我不能為 Firebase 的文檔數據設置狀態?

為什麼委託構造函數不能按預期工作 UE4

為什麼我不能在同一個數組中推送索引?

為什麼我在 C 中的 main 函數只打印第一個 for 循環?

為什麼我的函數 encodeChar 不起作用?

在非靜態構造函數中設置靜態字段 | 為什麼這樣做?| C#

為什麼提示在我的函數中不起作用?

為什麼我可以在結構的類型參數中編寫函數類型?

那麼,為什麼我必須在基類中定義虛函數?

為什麼我不能將 lambdas 作為默認值分配給函數參數?

為什麼我的函數在 componentDidMount 之前運行

為什麼我不能從 HTML 文件訪問 javascript 函數?

為什麼我的 onsubmit 驗證函數沒有提交我的函數?

為什麼我的 Haskell 函數參數必須是 Bool 類型?

C#10 可為空模式:如何告訴編譯器我在構造函數中間接設置了不可為空的屬性?

為什麼某些 CSS 函數在我的 WPF WebBrowser 元素中不起作用?

如何在父構造函數中為屬性設置默認值?

為什麼我的函數不能在 DB2 LUW 上使用相同的關鍵字?

如果我在構造函數中使用 Proxy:get,為什麼 mocha chai 不應該證明`return this`的身份?

為什麼我在構造函數中填充的這個數組在構造函數返回後沒有填充?

為什麼我得到的值超出了我的 rand 函數參數?

我什麼時候需要 Spring 實體中的構造函數?

為什麼我不能從遞歸函數返回值?

為什麼我不能從遞歸函數返回值?