Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何向用户展示特定的web设计?_Javascript_Node.js_Reactjs_Passport.js - Fatal编程技术网

Javascript 如何向用户展示特定的web设计?

Javascript 如何向用户展示特定的web设计?,javascript,node.js,reactjs,passport.js,Javascript,Node.js,Reactjs,Passport.js,例如,如果一个用户是管理员,如何实现react逻辑来显示不同的设计,或者如果一个用户有特权,我想更改他的页面设计,并使用node+Passport.js验证他的特权。我应该如何实现这一点。我通常的做法是只在认证后公开一层路由。像下面这样 const Routes=()=>{ 返回( ); } const ProtectedRoutes=()=>{ const[isAuthenticated,setAuthenticatedStatus]=useState(false); useffect(()=

例如,如果一个用户是管理员,如何实现react逻辑来显示不同的设计,或者如果一个用户有特权,我想更改他的页面设计,并使用node+Passport.js验证他的特权。我应该如何实现这一点。

我通常的做法是只在认证后公开一层路由。像下面这样

const Routes=()=>{
返回(
);
}
const ProtectedRoutes=()=>{
const[isAuthenticated,setAuthenticatedStatus]=useState(false);
useffect(()=>{
//这里的业务逻辑或api调用
setAuthenticatedStatus(true);//假定用户有效
},[]);//保持必要的依赖关系
如果(未经验证)返回;
返回;
}
有些人也在组件级别使用HoC方法来实现这一点,这也是另一种可能的方法,但可能不需要,比如

const Admin=()=>(管理视图);
const with authentication=(Comp)=>(props)=>{
const[isAuthenticated,setAuthenticatedStatus]=useState(false);
useffect(()=>{
//这里的业务逻辑或api调用
setAuthenticatedStatus(true);//假定用户有效
},[]);//保持必要的依赖关系
如果(未经验证)返回
返回;
}
使用身份验证导出默认值(管理员);