【问题标题】:React: Creating different user profilesReact:创建不同的用户配置文件
【发布时间】:2019-03-15 20:42:33
【问题描述】:
我正在用 React 制作一个应用程序,我希望用户可以选择使用他们的电子邮件/密码作为身份验证因素来创建一个帐户。但是,我想要两种不同用户类型的选项。例如,客户和医生。因此,当用户登录时,他们会被带到该用户类型的唯一配置文件(即:clientProfile.js 或医师Profile.js)。这是一个数据库项目吗? firebase 身份验证令牌?任何建议都会很棒!
【问题讨论】:
标签:
database
reactjs
firebase
authentication
【解决方案1】:
当用户注册时,他们将从select 下拉列表中选择他们的role(或您选择的任何 UI 元素):客户端 或 医师。您将把它保存到数据库中。
当用户登录时,您将返回他们的 role 以及前端需要处理用户的任何其他相关用户数据。
渲染配置文件时,您将检查他们的role 并返回相应的组件:clientProfile.js 或 physicianProfile.js
您的组件可能如下所示:
class UserProfile extends Component {
constructor(props) {
super(props);
this.state = {
user: null
};
}
componentDidMount() {
/* fetch user from database */
this.setState({user: response.user});
}
render() {
const { user } = this.state;
if (user === null) {
return <Loading/>;
}
if (user.role === 'physician') {
return <PhysicianProfile user={user}/>;
}
return <ClientProfile user={user}/>;
}
}