Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ReactJS:如何从useState钩子导出变量?_Javascript_Reactjs - Fatal编程技术网

Javascript ReactJS:如何从useState钩子导出变量?

Javascript ReactJS:如何从useState钩子导出变量?,javascript,reactjs,Javascript,Reactjs,早些时候,json格式的数据存储在data.js文件中,现在需要从服务器加载它们。我不想更改导入这些数据变量的文件的逻辑。如何将这两个变量正确导出到product.js文件? Thanx是个笨蛋![![在此处输入图像描述][1][1] 链接和屏幕: import React, {useEffect, useState} from "react"; import ReactDOM from "react-dom"; import axios from'axios' function Product

早些时候,json格式的数据存储在data.js文件中,现在需要从服务器加载它们。我不想更改导入这些数据变量的文件的逻辑。如何将这两个变量正确导出到product.js文件? Thanx是个笨蛋![![在此处输入图像描述][1][1]

链接和屏幕:

import React, {useEffect, useState} from "react";
import ReactDOM from "react-dom";
import axios from'axios'
function Product() {
  const [storeProducts, setStoreProducts] = useState({ hits: [] });
  const [detailProduct, setDetailProduct] = useState({ hits: [] });
  useEffect(() => {
    const fetchDataProducts = async () => {
      const result = await axios(
        'https:/api/v1/products/',
      );
      setStoreProducts(result.data)
      console.log(result.data);
    };
    fetchDataProducts();
      }, []);
  useEffect(() => {
    const fetchDataProduct= async () => {
      const result = await axios(
        'https://api/v1/products/:id',
      );
      setDetailProduct(result.data);
    };
    fetchDataProduct();
      }, []);
}

How to export storeProducts and detailProduct?

为清晰起见,请添加一个链接


男人。。。您应该利用React.createContext来完成这样的事情。这是制作道具的唯一方法。选中此项:

你可以这样使用你的小提琴:


import {ProductContext} from './somewhere';


const Component () => {

const {productState, productActions} = useContext(ProductContext);


return (<div>
    <button onClick={e => productActions.dispatch({type: 'SET_PRODUCT_DETAILS', payload: {foo: 1, bar: 2}})}>Dispatch something</button>
    {JSON.stringify(productState)}
</div>)

}

使用时,请记住将其放在为其创建的提供程序周围。

yeah..但是否可以在必要的文件中发出请求并使用变量中的数据?这样:也可以在主帖子中添加一个链接如果你检查最后一行,那么在最后一行中有一个提供者可以使自定义钩子可导出。检查一下,你能告诉我什么看起来不正确吗?哼!我刚刚编辑了我的答案,我想现在已经很清楚了。谢谢你抽出时间!最后一个请求,你能在这里查看关于这个主题的更新帖子吗?