|
|
@@ -0,0 +1,83 @@
|
|
|
+import * as WebBrowser from 'expo-web-browser';
|
|
|
+import * as React from 'react';
|
|
|
+import { StyleSheet, View } from 'react-native';
|
|
|
+import { WingBlank, InputItem } from '@ant-design/react-native';
|
|
|
+import { Caption, Paragraph } from 'react-native-paper';
|
|
|
+import { Div } from 'react-native-magnus';
|
|
|
+import useModel from 'flooks';
|
|
|
+import { useCreation } from '@umijs/hooks';
|
|
|
+import user from '../../flooks/User';
|
|
|
+import Header from '../../components/Header';
|
|
|
+import Button from '../../components/Button';
|
|
|
+
|
|
|
+export default function RegisterScreen() {
|
|
|
+ const [phone, setphone] = React.useState();
|
|
|
+ const [password, setPassword] = React.useState();
|
|
|
+
|
|
|
+ const { loginByRegister } = useModel(user, []);
|
|
|
+
|
|
|
+ const canSubmit = useCreation(() => {
|
|
|
+ if (password && phone) {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }, [phone, password]);
|
|
|
+
|
|
|
+ return (
|
|
|
+ <Div flex={1} bg="white">
|
|
|
+ <Header title="用户注册" />
|
|
|
+
|
|
|
+ <View style={styles.list}>
|
|
|
+ <WingBlank>
|
|
|
+ <View>
|
|
|
+ <InputItem
|
|
|
+ clear
|
|
|
+ type="phone"
|
|
|
+ value={phone}
|
|
|
+ onChange={setphone}
|
|
|
+ placeholder="输入手机号"
|
|
|
+ style={{ fontSize: 14 }}
|
|
|
+ >
|
|
|
+ <Paragraph>手机号</Paragraph>
|
|
|
+ </InputItem>
|
|
|
+ <InputItem
|
|
|
+ clear
|
|
|
+ type="password"
|
|
|
+ value={password}
|
|
|
+ onChange={setPassword}
|
|
|
+ placeholder="输入密码"
|
|
|
+ style={{ fontSize: 14 }}
|
|
|
+ >
|
|
|
+ <Paragraph>密码</Paragraph>
|
|
|
+ </InputItem>
|
|
|
+
|
|
|
+ <View style={[styles.btn]}>
|
|
|
+ <Button
|
|
|
+ disabled={!canSubmit}
|
|
|
+ size="normal"
|
|
|
+ style={styles.btn}
|
|
|
+ onPress={() => loginByRegister(phone, password)}
|
|
|
+ block
|
|
|
+ >
|
|
|
+ 确定
|
|
|
+ </Button>
|
|
|
+ </View>
|
|
|
+ </View>
|
|
|
+ </WingBlank>
|
|
|
+ </View>
|
|
|
+ </Div>
|
|
|
+ );
|
|
|
+}
|
|
|
+
|
|
|
+const styles = StyleSheet.create({
|
|
|
+ list: {
|
|
|
+ backgroundColor: '#fff',
|
|
|
+ borderWidth: 0,
|
|
|
+ flex: 1,
|
|
|
+ paddingTop: 20,
|
|
|
+ },
|
|
|
+ btn: {
|
|
|
+ marginTop: 40,
|
|
|
+ },
|
|
|
+});
|