如何使用第三方库 react-activation回到在先前的浏览位置上
Admin 2023-04-01 群英技术资讯 1113 次浏览
在移动端中,用户访问了一个列表页,上拉浏览列表页的过程中,随着滚动高度逐渐增加,数据也将采用触底分页加载的形式逐步增加,列表页浏览到某个位置,用户看到了感兴趣的项目,点击查看其详情,进入详情页,从详情页退回列表页时,需要停留在离开列表页时的浏览位置上,react中没有现成得保留组件状态得方法。
但是有第三方库 react-activation 个人感觉这个好用!
提示:以下是本篇文章正文内容,下面案例可供参考
npm i react-activation
1、在根目录引入 AliveScope
import {AliveScope} from 'react-activation' import App from './App'; const root = ReactDOM.createRoot(document.getElementById('root')); root.render( <BrowserRouter> <Provider store={store}> <AliveScope> <App /> </AliveScope> </Provider> </BrowserRouter> );
2、在需要保留状态得组件上使用 KeepAlive 包裹
我要保留cate组件得状态所以使用keepAlive包裹cate组件
import { Navigate } from 'react-router-dom' import {KeepAlive} from 'react-activation' // 懒加载路由需要放到普通路由最下面 import NotFound from '../pages/notFound' import Layout from '../pages/Layout' import Home from '../pages/Layout/Home' import Cate from '../pages/Layout/Cate' import CateItem from '../pages/Layout/CateItem' import ShopCar from '../pages/Layout/ShopCar' import Me from '../pages/Layout/Me' import ItemAll from '../pages/ItemAll' const routerList = [ { path: '/', element: <Navigate to="/home" /> }, { path: '/home', element:<Layout />,children:[ {index:true, element: <Navigate to="index" />}, {path:'index', element: <Home />}, {path:'cate', element: <KeepAlive><Cate /></KeepAlive>}, //这里需要包裹 {path:'cateItem', element: <CateItem />}, {path:'shopcar', element: <ShopCar />}, {path:'Me', element: <Me />}, ] }, { path: '*', element: <NotFound /> } ] export default routerList
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
js中模块化是什么意思?有什么用?很多新手对js中模块化可能不是很了解,对此,下面小编就给大家介绍一下模块化的概念和作用,以及怎样实现模块化,有需要的朋友可以参考,接下来我们一起往下看吧。
用JS怎样做鼠标经过表格变色的效果?也就是鼠标经过表格的某行时,这行变色显示的效果,这样的好处的就是一目了然看到所选的信息,小编觉得比较有用,因此分享给大家做个参考,感兴趣的朋友就继续往下看吧。
目录打包后相对路径的引用解决办法解决JS、CSS等资源解决图片的引用问题vue cli打包相对路径遇到的坑打包后相对路径的引用vue打包部署后,访问是需要加上项目名这时候访问是使用绝对路径就会处问题了。解决办法把引用路径改为相对路径解决JS、CSS等资源打开build文件夹下的webpack.prod.conf.js,
跨域指浏览器不允许当前页面的所在的源去请求另一个源的数据,下面这篇文章主要给大家介绍了关于VUE跨域详解以及常用解决跨域的方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
前段时间公司在做一个webIDE项目,其中有对文件树的各种操作,主要通过右键菜单实现,今天就来记录一下怎么在vue项目中实现全局的自定义右键菜单。效果如图所示:注意:需要在项目中找到页面整体布局的组件,比如项目使用Home.vue作为整个项目的公共布局,将根元素定位设置成relative,使右键菜单相对于其进行定位。本
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008