【发布时间】:2020-04-09 14:03:39
【问题描述】:
我是 React Context 的新手。 我需要在反应上下文中调用 API 以在整个反应应用程序中使用其数据。同样的 API 也需要在 react 应用的各个组件上进行一些 CRUD 操作。
现在我将 API 数据存储在我不想存储的 redux 中。
这是我尝试过的..
context.js 文件
import React, { useState, createContext,useEffect } from 'react';
import {getData} from './actionMethods';
const NewContext = createContext();
function newContextProvider(props) {
useEffect(async () => {
const {dataValue} = await getData()
console.log("Data " , dataValue)
}, [])
return (
<NewContext.Provider
value={{
state: {
},
actions: {
}
}}
>
{props.children}
</NewContext.Provider>
);
}
const newContextConsumer = newContext.Consumer;
export { newContextProvider, newContextConsumer, newGridContext };
actionMethods.js
export function getData() {
let config = getInstance('GET', `${prefix}/xyz/list`)
return axios(config).then(res => res.data).catch(err => {
console.log(err)
})
}
当执行任何 CRUD 操作时,我需要从 context.js 文件中调用 API 以从 API 中获取数据并存储在上下文中。
任何帮助都会很棒。
谢谢。
【问题讨论】:
标签: javascript reactjs react-hooks react-context