Javascript ReactJS:如何从useState钩子导出变量?
早些时候,json格式的数据存储在data.js文件中,现在需要从服务器加载它们。我不想更改导入这些数据变量的文件的逻辑。如何将这两个变量正确导出到product.js文件? Thanx是个笨蛋![![在此处输入图像描述][1][1] 链接和屏幕: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
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..但是否可以在必要的文件中发出请求并使用变量中的数据?这样:也可以在主帖子中添加一个链接如果你检查最后一行,那么在最后一行中有一个提供者可以使自定义钩子可导出。检查一下,你能告诉我什么看起来不正确吗?哼!我刚刚编辑了我的答案,我想现在已经很清楚了。谢谢你抽出时间!最后一个请求,你能在这里查看关于这个主题的更新帖子吗?