react hooks redux 在外部js中修改
root_reducer.jsx
import React, { createContext,useReducer } from 'react';
export const ColorContext = createContext({})
function reducer(state,action){
return action
}
export function Load(props){
const [loadState,dispatch]=useReducer(reducer,false)
return (
<ColorContext.Provider value={{loadState,dispatch}}>
{props.children}
</ColorContext.Provider>
)
}
loading.jsx
//todo 自定义遮罩加载状态
import React, { useContext } from 'react'
import { Spin } from 'antd';
import './loading.less'
import { ColorContext} from '../../../reducer/root_reducer.jsx'
function Loadingc(props) {
const { loadState } = useContext(ColorContext)
return (
<>
{loadState ? (<div className="loading">
<Spin/>
</div>) : null}
</>
)
}
export default Loadingc
App.jsx
function App() {
return (
<Load>
<Loadingc></Loadingc>
<div className="app">
</div>
</Load>
)
}
export default App
怎样在独立的http.js
中使用dispatch修改状态(或者根据接口请求状态展示‘加载中...’组件),大佬们都是怎么封装'loading'组件的?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在线体验地址
关键代码