当前位置: 首页 > news >正文

网络营销成功的案例有哪些百度seo排名在线点击器

网络营销成功的案例有哪些,百度seo排名在线点击器,湖南建筑信息网一体化平台,个人网站建设咨询电话当你需要进行 Redux 和 React Query 的组合时,除了常规的 Redux 方法(例如手动派发 action 和更新 state),还可以使用 createSlice 和 React Query 进行组合,这可以让你更方便地封装异步请求和更容易地更新状态。 使用…

当你需要进行 Redux 和 React Query 的组合时,除了常规的 Redux 方法(例如手动派发 action 和更新 state),还可以使用 createSlice 和 React Query 进行组合,这可以让你更方便地封装异步请求和更容易地更新状态。

使用 createSlice 创建 reducer:

import { createSlice } from '@reduxjs/toolkit';
import { fetchUserInfo, fetchUserList } from './api';
import { useQuery } from 'react-query';const userSlice = createSlice({name: 'users',initialState: {userInfo: null,userList: null,},reducers: {setUserInfo: (state, action) => {state.userInfo = action.payload;},setUserList: (state, action) => {state.userList = action.payload;},},
});export const { setUserInfo, setUserList } = userSlice.actions;export const useUserInfoQuery = (userId) => {const { data, isLoading, isError } = useQuery(['userInfo', userId], () => fetchUserInfo(userId));if (data) {dispatch(setUserInfo(data));}return {user: useSelector((state) => state.users.userInfo),isLoading,isError,};
};export const useUserListQuery = () => {const { data, isLoading, isError } = useQuery('userList', fetchUserList);if (data) {dispatch(setUserList(data));}return {userList: useSelector((state) => state.users.userList),isLoading,isError,};
};export default userSlice.reducer;

接着,在 store 中注册 userReducer reducer,并添加 React Query Provider,这样可以在整个应用程序中共享 React Query 的 cache,避免重复的请求。

import { configureStore } from '@reduxjs/toolkit';
import { QueryClient, QueryClientProvider } from 'react-query';
import { Provider } from 'react-redux';
import userReducer from './userSlice';const queryClient = new QueryClient();const store = configureStore({reducer: {users: userReducer,},
});ReactDOM.render(<Provider store={store}><QueryClientProvider client={queryClient}><App /></QueryClientProvider></Provider>,document.getElementById('root')
);

最后,在组件中使用创建的 useUserInfoQueryuseUserListQuery hooks,展示用户信息和用户列表。

import { useUserInfoQuery, useUserListQuery } from './userSlice';const UserInfo = ({ userId }) => {const { user, isLoading, isError } = useUserInfoQuery(userId);if (isLoading) {return <div>Loading</div>;}if (isError) {return <div>Error</div>;}return (<div><h1>{user.name}</h1><p>{user.email}</p><p>{user.phone}</p></div>);
};const UserList = () => {const { userList, isLoading, isError } = useUserListQuery();if (isLoading) {return <div>Loading</div>;}if (isError) {return <div>Error</div>;}return (<div>{userList.map(user => (<div key={user.id}><h2>{user.name}</h2><p>{user.email}</p><p>{user.phone}</p></div>))}</div>);
};

通过使用 createSlice 和 React Query 结合的方式,不仅可以更轻松管理 Redux 的异步状态和数据请求,也更方便地管理用户的相关状态信息。

http://www.tj-hxxt.cn/news/11238.html

相关文章:

  • 安卓手机网页视频怎么下载重庆seo网络推广关键词
  • 国外域名注册哪个网站好重庆排名优化整站优化
  • 做标书经验分享网站关键词排名工具有哪些
  • 哈尔滨市建设委员会网站网站流量排名
  • 做外贸怎么上国外网站seo优化包括哪些内容
  • 网站后台制作这么做西安百度推广开户多少钱
  • 福州做网站的公司怎么搭建自己的网站
  • 什么网站可以做动画网站推广方案模板
  • 广州做网站找哪家好百度竞价是什么
  • 怎样做网站 网页查询网 网站查询
  • wordpress搜索怎么用不了sem与seo的区别
  • 徐州网站建设推广在线一键生成网页
  • 做信息流推广需要建立网站么网络策划方案
  • 怎么做一家网站免费的网页设计成品下载
  • jsp动态网站开发课程免费的b2b平台
  • wordpress覆盖升级网站是怎么优化推广的
  • 做ppt的图片网站网络营销课程论文
  • 网站建设与管理好找工作吗商业推广
  • 医院网站和公众号建设方案网络营销工具及其特点
  • 网站的整体结构2345网址导航电脑版官网
  • 龙岗营销网站建设市场营销最有效的手段
  • 经典网站源码手机建站
  • 做网站怎样产生效益百度竞价推广后台
  • 怎么做自己的网站免费电商平台的营销方式
  • logo设计公司哪家好北京网站seo招聘
  • 青岛外贸假发网站建设高清免费观看电视网站
  • 网站做优化有创意的营销策划案例
  • 郑州网站模板湖南网络优化
  • 乡镇政府可以做网站认网站推广app软件
  • 免费网站转app个人网页设计作品欣赏