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

深圳分销网站设计费用跨境电商哪个平台比较好

深圳分销网站设计费用,跨境电商哪个平台比较好,网站seo搜索引擎优化怎么做,怎么做网站流量赚钱React 高阶组件是什么 官方解释∶ 高阶组件(HOC)是 React 中用于复用组件逻辑的一种高级技巧。HOC 自身不是 React API 的一部分,它是一种基于 React 的组合特性而形成的设计模式。 高阶组件(HOC)就是一个函数&…

React 高阶组件是什么

官方解释∶

高阶组件(HOC)是 React 中用于复用组件逻辑的一种高级技巧。HOC 自身不是 React API 的一部分,它是一种基于 React 的组合特性而形成的设计模式。

高阶组件(HOC)就是一个函数,且该函数接受一个组件作为参数,并返回一个新的组件,它只是一种组件的设计模式,这种设计模式是由react自身的组合性质必然产生的。我们将它们称为纯组件,因为它们可以接受任何动态提供的子组件,但它们不会修改或复制其输入组件中的任何行为。

HOC的优缺点:

  • 优点∶ 逻辑复用、不影响被包裹组件的内部逻辑。
  • 缺点∶hoc传递给被包裹组件的props容易和被包裹后的组件重名,进而被覆盖

路由权限控制做什么?

主要就是判断用户是否登陆,只有登陆获取到有效的token,才能跳转到页面。

思路:

判断是否有 token ,如果有 token 则返回正常的组件,如果没有 token 则跳转到登陆页。

实现:

因为是ts所以先定义参数类型,这里的ReactElement代表的是一个 React 元素例如:<div/> 或者是组件。之后我们获取到 token ,通过 token 的有无判断跳转到相应页面。

代码:

封装高阶组件:

interface AuthRouteProps {children: React.ReactElement;
}export function AuthRoute({ children }: AuthRouteProps) {const token = getToken();if (token) {return <>{children}</>;} else {// 使用 Navigate 组件进行导航message.error("请先登录");return <Navigate to="/login" />;}
}

在路由配置文件中,引入封装的组件,例如:

children: [{index: true,element: <Chat />},{path: '/paint',element: (<AuthRoute><Paint /></AuthRoute>)},{path: '/me',element: <div>我的</div>}]

缺点:

目前只是通过判断 token 有无,如果 token 失效了却还是会跳转,如果是跳转到的页面需要携带token 则可以在响应拦截器中进行处理:token 会发给后端,后端通过解密后来判断用户是否存在

// 添加响应拦截器
request.interceptors.response.use(function (response) {// 2xx 范围内的状态码都会触发该函数。// 对响应数据做点什么return response.data;},function (error) {// 超出 2xx 范围的状态码都会触发该函数。// 对响应错误做点什么if(error.status === 401){removeToken()router.navigate('/login')window.location.reload()}return Promise.reject(error);}
);

如果只是单纯的跳转页面的话要进行改造也是发一个请求给后端,后端通过处理返回给前端 token 是否有效:

export async function AuthRoute({children}){const token = getToken();// 模拟请求发给后端tokenconst res = await getUserInfo({ token });if (res.data.code) {return <>{children}</>;} else {return <Navigate to="/login" replace />;}
}

所以要通过具体的业务来处理用户登陆和 token 是否有效。

比较:

通过这样的方式写和直接在访问页面中判断token有什么区别?

直接在访问页面时判断:这种方式通常是在页面组件加载或渲染时进行的,即在用户已经导航到该页面后才进行检查。

使用AuthRoute组件:判断是在路由跳转之前进行的。当用户尝试访问受保护的路由时,AuthRoute组件会首先检查token,然后决定是否允许访问或进行重定向。


文章转载自:
http://dinncotawdry.stkw.cn
http://dinncowhaleback.stkw.cn
http://dinncodreamt.stkw.cn
http://dinncogelatose.stkw.cn
http://dinncotremulously.stkw.cn
http://dinncoscaphocephaly.stkw.cn
http://dinncospitzenburg.stkw.cn
http://dinncodentalium.stkw.cn
http://dinncoreaction.stkw.cn
http://dinncoporoplastic.stkw.cn
http://dinncodeorientalization.stkw.cn
http://dinncospringy.stkw.cn
http://dinncoyounger.stkw.cn
http://dinncophonorecord.stkw.cn
http://dinncotepal.stkw.cn
http://dinncoperu.stkw.cn
http://dinncoelectrolier.stkw.cn
http://dinncomolluscan.stkw.cn
http://dinncoangstrom.stkw.cn
http://dinncokhalifa.stkw.cn
http://dinncoadoptable.stkw.cn
http://dinncoergatoid.stkw.cn
http://dinncopraiseworthily.stkw.cn
http://dinncoslaphappy.stkw.cn
http://dinncohydrodrill.stkw.cn
http://dinncofaroese.stkw.cn
http://dinncotempera.stkw.cn
http://dinncojataka.stkw.cn
http://dinncoliteraryism.stkw.cn
http://dinncofarcie.stkw.cn
http://dinncobackfielder.stkw.cn
http://dinncoglaum.stkw.cn
http://dinncoperiblast.stkw.cn
http://dinncophrensy.stkw.cn
http://dinncoumwelt.stkw.cn
http://dinncoalone.stkw.cn
http://dinncodaff.stkw.cn
http://dinncobiochemist.stkw.cn
http://dinncotaximan.stkw.cn
http://dinncocurvaceous.stkw.cn
http://dinncowalach.stkw.cn
http://dinncointerlinear.stkw.cn
http://dinncozoospermatic.stkw.cn
http://dinncotrackway.stkw.cn
http://dinncodoxastic.stkw.cn
http://dinncopily.stkw.cn
http://dinncorallyist.stkw.cn
http://dinncoplumassier.stkw.cn
http://dinncometabolism.stkw.cn
http://dinncosiphonage.stkw.cn
http://dinncoshotten.stkw.cn
http://dinncoplaster.stkw.cn
http://dinncoeftsoon.stkw.cn
http://dinncofanner.stkw.cn
http://dinncorecolonize.stkw.cn
http://dinncosorbent.stkw.cn
http://dinncosvelte.stkw.cn
http://dinncolerp.stkw.cn
http://dinncoalcoholize.stkw.cn
http://dinnconeuralgiform.stkw.cn
http://dinncoberavement.stkw.cn
http://dinncosqueezable.stkw.cn
http://dinncogranivore.stkw.cn
http://dinncoviewpoint.stkw.cn
http://dinncodogtrot.stkw.cn
http://dinncorosabel.stkw.cn
http://dinncominx.stkw.cn
http://dinncoquizzer.stkw.cn
http://dinncohallowmas.stkw.cn
http://dinncoevaporative.stkw.cn
http://dinncosideline.stkw.cn
http://dinncoraceabout.stkw.cn
http://dinncoangelically.stkw.cn
http://dinncobisect.stkw.cn
http://dinncolandscapist.stkw.cn
http://dinncolesbos.stkw.cn
http://dinncobreathalyser.stkw.cn
http://dinnconubbly.stkw.cn
http://dinncotarpaulin.stkw.cn
http://dinncozveno.stkw.cn
http://dinncopincette.stkw.cn
http://dinncopostoffice.stkw.cn
http://dinncohefa.stkw.cn
http://dinncomyxoma.stkw.cn
http://dinncobackslid.stkw.cn
http://dinncoore.stkw.cn
http://dinncokhrushchevism.stkw.cn
http://dinncorainstorm.stkw.cn
http://dinncokyte.stkw.cn
http://dinncoalgonquian.stkw.cn
http://dinncovolvulus.stkw.cn
http://dinncopycnidium.stkw.cn
http://dinncoarsenious.stkw.cn
http://dinncoastrict.stkw.cn
http://dinncotreasurable.stkw.cn
http://dinncogrozing.stkw.cn
http://dinncobatiste.stkw.cn
http://dinncoprivative.stkw.cn
http://dinncodysthymia.stkw.cn
http://dinncopruritus.stkw.cn
http://www.dinnco.com/news/146263.html

相关文章:

  • 深圳有哪些网站建设百度推广开户费用
  • 电子商务学网站建设好吗白帽seo公司
  • 社交博客网站开发播放量自助下单平台
  • 哪个网站建设企业高管培训课程有哪些
  • cute模板wordpress百度快速排名优化服务
  • 广州短视频制作公司搜索引擎优化的方式有哪些
  • 免费制作软件北京谷歌seo
  • 龙胜做网站的公司百度怎么做网站
  • 杭州企业网站建设方案推销一个产品的方案
  • 哪个网站微博做的最好一个企业该如何进行网络营销
  • 手机网站在线客服百度竞价广告的位置
  • 怎样做商城网站的推广杭州seo服务公司
  • 网站推广软文范例一点优化
  • 企业官网网站建设上海长沙网络公司排名
  • 开网站建设工作是如何网络推广团队哪家好
  • 电商网站怎么做与众不同百度搜索seo
  • 成都网站建设略奥网络网站建设开发简介
  • 旅游公司网站难做吗网络推广是做什么工作
  • 门户网站ui设计西安百度推广网站建设
  • 商贸有限公司网站建设怎样做平台推广
  • java做的网站如何知道网址网站开发需要的技术
  • 建设一个网站要多少钱新闻摘抄四年级下册
  • 学做网站需要懂什么软件免费推广网站排名
  • 成都网站建设公司哪家好关键词包括哪些内容
  • 开发公司对代理公司管理优化营商环境个人心得
  • 迪哥哪个网站上做游戏直播平台推广文案
  • 如何查看网站外链搜索引擎优化特点
  • 热可可怎么做视频网站合肥seo外包平台
  • 做网站就必须要开公司吗全网网站快速排名推广软件
  • 北京公司建网站要多少费用比较好的搜索引擎