From 338eaa1051bded1669504f08346226f1a3ab741b Mon Sep 17 00:00:00 2001 From: jinsumin Date: Sun, 10 Jan 2021 18:00:25 +0900 Subject: [PATCH 01/11] update : styles : signUpPhone.js --- app/src/view/sign/components/PhoneCodeInputTextView.js | 2 +- app/src/view/sign/signUp/SignUpPhone.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/view/sign/components/PhoneCodeInputTextView.js b/app/src/view/sign/components/PhoneCodeInputTextView.js index 24bd008..ceacc36 100644 --- a/app/src/view/sign/components/PhoneCodeInputTextView.js +++ b/app/src/view/sign/components/PhoneCodeInputTextView.js @@ -52,7 +52,7 @@ class PhoneCodeInputTextView extends React.Component { textContentType="creditCardNumber" onFocus={this.handleFocus} blurOnSubmit - placeholder="숫자6자리" + placeholder="인증번호 입력" /> ); diff --git a/app/src/view/sign/signUp/SignUpPhone.js b/app/src/view/sign/signUp/SignUpPhone.js index 300d8fc..58ef45b 100644 --- a/app/src/view/sign/signUp/SignUpPhone.js +++ b/app/src/view/sign/signUp/SignUpPhone.js @@ -103,7 +103,7 @@ const SignUpPhone = (props) => { - 휴대폰 번호를 입력해주세요 + 휴대폰 번호를 입력해주세요. Date: Sun, 10 Jan 2021 18:25:32 +0900 Subject: [PATCH 02/11] update : styles : group creation more info : gray -> white --- app/src/dto/GroupingCreationDto.js | 18 ++++++++---------- app/src/repository/GroupCreationRepository.js | 8 ++++---- app/src/store/GroupingCreationMainStore.js | 1 + .../creation/NewGroupMoreInfoView.js | 1 + 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/app/src/dto/GroupingCreationDto.js b/app/src/dto/GroupingCreationDto.js index de0a284..37a20a5 100644 --- a/app/src/dto/GroupingCreationDto.js +++ b/app/src/dto/GroupingCreationDto.js @@ -1,27 +1,25 @@ export default class GroupingCreationDto { - title; + availableGender; - isHidden; + description; - minUserAge; + hashtagList; + + isHidden; maxUserAge; - availableGender; + minUserAge; - description; + pointDescription; pointX; pointY; - pointDescription; - representGroupingUserId; - hashtagList = []; - - representGroupImage; + title; constructor(data = {}) { Object.assign(this, data); diff --git a/app/src/repository/GroupCreationRepository.js b/app/src/repository/GroupCreationRepository.js index 055f679..51db5b6 100644 --- a/app/src/repository/GroupCreationRepository.js +++ b/app/src/repository/GroupCreationRepository.js @@ -7,9 +7,9 @@ import GroupingCreationDto from '../dto/GroupingCreationDto'; const TARGET_URL = `${GROUP_URL}`; export default class GroupCreationRepository { - async completeGroupCreation(groupingCreationDto, failedCallback) { + async completeGroupCreation(requestDto, failedCallback) { const response = await axios - .post(`${TARGET_URL}`, groupingCreationDto) + .post(`${TARGET_URL}`, requestDto) .then(() => { console.log('group creation complete'); console.log(response); @@ -24,11 +24,11 @@ export default class GroupCreationRepository { return new GroupingCreationDto(commonResponse.data); } - async completeGroupRepresentImgUpload(groupingUserId, uri, failedCallback) { + async completeGroupRepresentImgUpload(groupId, uri, failedCallback) { const imageFile = new FormData(); imageFile.append('imageFile', uri.content); const response = await axios - .post(`${TARGET_URL}/image`, groupingUserId, imageFile) + .post(`${TARGET_URL}/image`, groupId, imageFile) .then(() => { console.log('group represent img upload complete'); }) diff --git a/app/src/store/GroupingCreationMainStore.js b/app/src/store/GroupingCreationMainStore.js index 35acd30..5f4212e 100644 --- a/app/src/store/GroupingCreationMainStore.js +++ b/app/src/store/GroupingCreationMainStore.js @@ -224,6 +224,7 @@ export default class GroupingCreationMainStore { } ); console.log(`response : ${response.data.code}`); + console.log(`groupingUserId : ${this.groupingUserId}`); await this.groupCreationRepository.completeGroupRepresentImgUpload( this.groupingUserId, this.getBackgroundImageURI, diff --git a/app/src/view/main/home/components/creation/NewGroupMoreInfoView.js b/app/src/view/main/home/components/creation/NewGroupMoreInfoView.js index a3809f4..a4072d0 100644 --- a/app/src/view/main/home/components/creation/NewGroupMoreInfoView.js +++ b/app/src/view/main/home/components/creation/NewGroupMoreInfoView.js @@ -121,6 +121,7 @@ const NewGroupMoreInfoView = (props) => { return ( Date: Sun, 10 Jan 2021 18:35:30 +0900 Subject: [PATCH 03/11] in progress : image upload --- app/src/store/GroupingCreationMainStore.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/store/GroupingCreationMainStore.js b/app/src/store/GroupingCreationMainStore.js index 5f4212e..3c2477b 100644 --- a/app/src/store/GroupingCreationMainStore.js +++ b/app/src/store/GroupingCreationMainStore.js @@ -302,6 +302,7 @@ export default class GroupingCreationMainStore { @action initialize() { this.groupingUserId = new GroupingUserDto().groupingUserId; + console.log(`initialize create new group progress : groupingUserId : ${this.groupingUserId}`); this.groupingTitle = ''; this.groupingKeyword = ''; this.groupingDescription = ''; @@ -313,7 +314,7 @@ export default class GroupingCreationMainStore { this.groupingDescriptionCompleted = false; this.groupingAddressCompleted = false; this.groupingCreationDto = new GroupingCreationDto(); - this.groupingCreationDto.representGroupingUserId = new GroupingUserDto().groupingUserId; + this.groupingCreationDto.representGroupingUserId = this.groupingUserId; this.groupingCreationDto.isHidden = false; this.groupingCreationDto.pointX = 100; this.groupingCreationDto.pointY = 100; From e11925c8c6140c0663a40425215b9bfcaa870952 Mon Sep 17 00:00:00 2001 From: jinsumin Date: Thu, 4 Feb 2021 22:29:56 +0900 Subject: [PATCH 04/11] add sign accessToken --- App.js | 16 ++++++++-------- app/src/database/UserData.js | 1 + app/src/dto/GroupingUserDto.js | 2 ++ app/src/table/UserTable.js | 5 +++-- package.json | 2 +- 5 files changed, 15 insertions(+), 11 deletions(-) create mode 100644 app/src/database/UserData.js diff --git a/App.js b/App.js index efa7a04..eb4f0e6 100644 --- a/App.js +++ b/App.js @@ -1,19 +1,15 @@ -import { StyleSheet, Text, View } from 'react-native'; +import { StyleSheet, View } from 'react-native'; import React, { Component } from 'react'; -import { inject, observer, Provider } from 'mobx-react'; +import { inject, observer } from 'mobx-react'; +import UserTable from './app/src/table/UserTable'; import Splash from './app/src/view/Splash'; import { USER_STATUS } from './app/src/constant/UserStatus'; import Main from './app/src/view/main/Main'; import Entrance from './app/src/view/entrance/Entrance'; -import { WINDOW_SIZE } from './app/src/constant/WindowSize'; -import SignUpPhone from './app/src/view/sign/signUp/SignUpPhone'; @inject('userStore', 'friendListStore') @observer class App extends Component { - // 컴포넌트가 만들어지고 첫 렌더링을 다 마친 후 실행되는 메소드입니다. - // 이 안에서 다른 JavaScript 프레임워크를 연동하거나, - // setTimeout, setInterval 및 AJAX 처리 등을 넣습니다. async componentDidMount() { // eslint-disable-next-line react/prop-types,react/destructuring-assignment // await this.props.userStore.ready(); @@ -27,7 +23,11 @@ class App extends Component { } else if (this.props.userStore.userStatus === USER_STATUS.GUEST) { view = ; } else if (this.props.userStore.userStatus === USER_STATUS.USER) { - view =
; + if (UserTable.schema.properties.accessToken) { + view =
; + } else { + view = ; + } } return {view}; } diff --git a/app/src/database/UserData.js b/app/src/database/UserData.js new file mode 100644 index 0000000..3e9c808 --- /dev/null +++ b/app/src/database/UserData.js @@ -0,0 +1 @@ +import Realm from 'realm'; diff --git a/app/src/dto/GroupingUserDto.js b/app/src/dto/GroupingUserDto.js index 392f10c..c369924 100644 --- a/app/src/dto/GroupingUserDto.js +++ b/app/src/dto/GroupingUserDto.js @@ -19,6 +19,8 @@ export default class GroupingUserDto { userStatus; + accessToken; + constructor(data = {}) { Object.assign(this, data); } diff --git a/app/src/table/UserTable.js b/app/src/table/UserTable.js index 9f487c4..18d00c0 100644 --- a/app/src/table/UserTable.js +++ b/app/src/table/UserTable.js @@ -1,7 +1,6 @@ +import Realm from 'realm'; import GroupingUserDto from '../dto/GroupingUserDto'; -const Realm = require('realm'); - export default class UserTable { create = async (groupingUserDto: GroupingUserDto) => { await Realm.open({ schema: [UserTable] }).then((realm) => { @@ -15,6 +14,7 @@ export default class UserTable { gender: groupingUserDto.gender, birthday: groupingUserDto.birthday, representProfileImage: groupingUserDto.representProfileImage, + accessToken: groupingUserDto.accessToken, }); }); }; @@ -39,5 +39,6 @@ UserTable.schema = { gender: 'string', birthday: 'date', representProfileImage: 'string?', + accessToken: 'string', }, }; diff --git a/package.json b/package.json index 0b53441..9cf8944 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "react-native-vector-icons": "^6.6.0", "react-native-webview": "^10.3.1", "react-native-wheel-picker-android": "^2.0.6", - "realm": "^6.0.2", + "realm": "^6.1.5", "rn-swipeable-panel": "^1.2.0" }, "devDependencies": { From 39427cfcc7cb5ec952f1d5c944a5880eb4627bcc Mon Sep 17 00:00:00 2001 From: jinsumin Date: Thu, 4 Feb 2021 23:24:54 +0900 Subject: [PATCH 05/11] add AuthTable, AuthDto and update some error code --- app/src/dto/AuthDto.js | 7 +++++++ app/src/dto/GroupingUserDto.js | 2 -- app/src/table/AuthTable.js | 19 +++++++++++++++++ app/src/table/GroupTable.js | 38 ++++++++++++++++------------------ app/src/table/UserTable.js | 2 -- 5 files changed, 44 insertions(+), 24 deletions(-) create mode 100644 app/src/dto/AuthDto.js create mode 100644 app/src/table/AuthTable.js diff --git a/app/src/dto/AuthDto.js b/app/src/dto/AuthDto.js new file mode 100644 index 0000000..99a13d6 --- /dev/null +++ b/app/src/dto/AuthDto.js @@ -0,0 +1,7 @@ +export default class AuthDto { + accessToken; + + constructor(data = {}) { + Object.assign(this, data); + } +} diff --git a/app/src/dto/GroupingUserDto.js b/app/src/dto/GroupingUserDto.js index c369924..392f10c 100644 --- a/app/src/dto/GroupingUserDto.js +++ b/app/src/dto/GroupingUserDto.js @@ -19,8 +19,6 @@ export default class GroupingUserDto { userStatus; - accessToken; - constructor(data = {}) { Object.assign(this, data); } diff --git a/app/src/table/AuthTable.js b/app/src/table/AuthTable.js new file mode 100644 index 0000000..bcb8a62 --- /dev/null +++ b/app/src/table/AuthTable.js @@ -0,0 +1,19 @@ +import Realm from 'realm'; +import AuthDto from '../dto/AuthDto'; + +export default class AuthTable { + create = async (authDto: AuthDto) => { + await Realm.open({ schema: [AuthTable] }).then((realm) => { + return realm.create('User', { + name: authDto.name, + }); + }); + }; +} + +AuthTable.schema = { + name: 'auth', + properties: { + accessToken: 'string', + }, +}; diff --git a/app/src/table/GroupTable.js b/app/src/table/GroupTable.js index d7a3e35..a791589 100644 --- a/app/src/table/GroupTable.js +++ b/app/src/table/GroupTable.js @@ -1,22 +1,21 @@ +import Realm from 'realm'; import GroupingCreationDto from '../dto/GroupingCreationDto'; -const Realm = require('realm'); - export default class GroupTable { create = async (groupingCreationDto: GroupingCreationDto) => { await Realm.open({ schema: [GroupTable] }).then((realm) => { return realm.create('Group', { title: groupingCreationDto.title, + description: groupingCreationDto.description, + pointDescription: groupingCreationDto.pointDescription, isHidden: groupingCreationDto.isHidden, - minAge: groupingCreationDto.minAge, - maxAge: groupingCreationDto.maxAge, - gender: groupingCreationDto.gender, + minUserAge: groupingCreationDto.minUserAge, + maxUserAge: groupingCreationDto.maxUserAge, + availableGender: groupingCreationDto.availableGender, pointX: groupingCreationDto.pointX, pointY: groupingCreationDto.pointY, - address: groupingCreationDto.address, - backgroundImageURI: groupingCreationDto.backgroundImageURI, - keyword: groupingCreationDto.keyword, - groupLeaderDto: groupingCreationDto.groupLeaderDto, + hashtagList: groupingCreationDto.hashtagList, + representGroupingUserId: groupingCreationDto.representGroupingUserId, }); }); }; @@ -25,17 +24,16 @@ export default class GroupTable { GroupTable.schema = { name: 'Group', properties: { - title: 'string', - isHidden: 'boolean', - minAge: 'int', - maxAge: 'int', - gender: 'string', + availableGender: 'MALE', description: 'string', - pointX: 'long', - pointY: 'long', - address: 'string', - backgroundImageURI: 'string?', - keyword: 'keyword', - groupLeaderDto: '', + hashtagList: ['string'], + isHidden: true, + maxUserAge: 0, + minUserAge: 0, + pointDescription: 'string', + pointX: 0, + pointY: 0, + representGroupingUserId: 'string', + title: 'string', }, }; diff --git a/app/src/table/UserTable.js b/app/src/table/UserTable.js index 18d00c0..a1c9043 100644 --- a/app/src/table/UserTable.js +++ b/app/src/table/UserTable.js @@ -14,7 +14,6 @@ export default class UserTable { gender: groupingUserDto.gender, birthday: groupingUserDto.birthday, representProfileImage: groupingUserDto.representProfileImage, - accessToken: groupingUserDto.accessToken, }); }); }; @@ -39,6 +38,5 @@ UserTable.schema = { gender: 'string', birthday: 'date', representProfileImage: 'string?', - accessToken: 'string', }, }; From b6b0a69acf233217f06528d7939a8a010f9f7fae Mon Sep 17 00:00:00 2001 From: jinsumin Date: Thu, 4 Feb 2021 23:42:11 +0900 Subject: [PATCH 06/11] update SignRepository for accessToken --- app/src/repository/SignRepository.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/app/src/repository/SignRepository.js b/app/src/repository/SignRepository.js index 50e078c..b969b47 100644 --- a/app/src/repository/SignRepository.js +++ b/app/src/repository/SignRepository.js @@ -5,6 +5,7 @@ import CheckEmailResponseDto from '../dto/CheckEmailResponseDto'; import CheckPhoneNumberResponseDto from '../dto/CheckPhoneNumberResponseDto'; import { ResponseCode } from '../constant/ResponseCode'; import GroupingUserDto from '../dto/GroupingUserDto'; +import AuthDto from '../dto/AuthDto'; const TARGET_URL = `${SIGN_URL}`; @@ -115,12 +116,12 @@ export default class SignRepository { const commonResponse = new CommonResponse(response.data); if (commonResponse.code !== ResponseCode.SUCCEED) { - commonResponse.data; failedCallback(commonResponse.code); return; } - return new GroupingUserDto(commonResponse.data); + await new AuthDto(commonResponse.data); + await new GroupingUserDto(commonResponse.data); } async signInWithEmail(email, password, failedCallback) { @@ -135,7 +136,8 @@ export default class SignRepository { return; } - return new GroupingUserDto(commonResponse.data); + await new AuthDto(commonResponse.data); + await new GroupingUserDto(commonResponse.data); } async signInWithPhone(phoneNumber, password, failedCallback) { @@ -150,6 +152,7 @@ export default class SignRepository { return; } - return new GroupingUserDto(commonResponse.data); + await new AuthDto(commonResponse.data); + await new GroupingUserDto(commonResponse.data); } } From a016ce49a7a34cc019e793cbea8f23647a1a883b Mon Sep 17 00:00:00 2001 From: jinsumin Date: Thu, 4 Feb 2021 23:59:56 +0900 Subject: [PATCH 07/11] get accessToken from AuthTable --- App.js | 51 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 21 deletions(-) diff --git a/App.js b/App.js index eb4f0e6..2b46bbe 100644 --- a/App.js +++ b/App.js @@ -1,37 +1,46 @@ import { StyleSheet, View } from 'react-native'; -import React, { Component } from 'react'; +import React, { Component, useEffect } from 'react'; import { inject, observer } from 'mobx-react'; -import UserTable from './app/src/table/UserTable'; +import AuthTable from './app/src/table/AuthTable'; import Splash from './app/src/view/Splash'; import { USER_STATUS } from './app/src/constant/UserStatus'; import Main from './app/src/view/main/Main'; import Entrance from './app/src/view/entrance/Entrance'; -@inject('userStore', 'friendListStore') -@observer -class App extends Component { - async componentDidMount() { +const App = () => { + let accessToken = false; + + useEffect(() => { + const getAccessToken = async () => { + try { + accessToken = await AuthTable.objects('Auth'); + } catch (e) { + console.log('no access token'); + } + }; + getAccessToken().then(); + }, []); + + /* async componentDidMount() { // eslint-disable-next-line react/prop-types,react/destructuring-assignment // await this.props.userStore.ready(); // await this.props.friendListStore.ready(); - } + } */ - render() { - let view; - if (this.props.userStore.userStatus === USER_STATUS.READY) { - view = ; - } else if (this.props.userStore.userStatus === USER_STATUS.GUEST) { + let view; + if (this.props.userStore.userStatus === USER_STATUS.READY) { + view = ; + } else if (this.props.userStore.userStatus === USER_STATUS.GUEST) { + view = ; + } else if (this.props.userStore.userStatus === USER_STATUS.USER) { + if (accessToken) { + view =
; + } else { view = ; - } else if (this.props.userStore.userStatus === USER_STATUS.USER) { - if (UserTable.schema.properties.accessToken) { - view =
; - } else { - view = ; - } } - return {view}; } -} + return {view}; +}; const styles = StyleSheet.create({ body: { @@ -39,4 +48,4 @@ const styles = StyleSheet.create({ }, }); -export default App; +export default inject('userStore', 'friendListStore')(observer(App)); From e4110f274cda69fd84ce09b496808680c603e421 Mon Sep 17 00:00:00 2001 From: jinsumin Date: Fri, 5 Feb 2021 00:42:47 +0900 Subject: [PATCH 08/11] add test code --- App.js | 39 ++++++++++++++++++++++++++++-------- app/src/database/UserData.js | 1 - 2 files changed, 31 insertions(+), 9 deletions(-) delete mode 100644 app/src/database/UserData.js diff --git a/App.js b/App.js index 2b46bbe..a4a0371 100644 --- a/App.js +++ b/App.js @@ -1,5 +1,5 @@ import { StyleSheet, View } from 'react-native'; -import React, { Component, useEffect } from 'react'; +import React, { useEffect } from 'react'; import { inject, observer } from 'mobx-react'; import AuthTable from './app/src/table/AuthTable'; import Splash from './app/src/view/Splash'; @@ -7,8 +7,8 @@ import { USER_STATUS } from './app/src/constant/UserStatus'; import Main from './app/src/view/main/Main'; import Entrance from './app/src/view/entrance/Entrance'; -const App = () => { - let accessToken = false; +const App = (props) => { + let accessToken = null; useEffect(() => { const getAccessToken = async () => { @@ -17,8 +17,23 @@ const App = () => { } catch (e) { console.log('no access token'); } + return accessToken; }; - getAccessToken().then(); + + const testAccessToken = async () => { + await AuthTable.write(() => { + try { + AuthTable.create('Auth', { + accessToken: 'ship_sang_token', + }); + } catch (e) { + console.log('write error'); + } + }); + accessToken = getAccessToken(); + }; + + testAccessToken().then(); }, []); /* async componentDidMount() { @@ -28,14 +43,22 @@ const App = () => { } */ let view; - if (this.props.userStore.userStatus === USER_STATUS.READY) { + if (props.userStore.userStatus === USER_STATUS.READY) { view = ; - } else if (this.props.userStore.userStatus === USER_STATUS.GUEST) { - view = ; - } else if (this.props.userStore.userStatus === USER_STATUS.USER) { + } else if (props.userStore.userStatus === USER_STATUS.GUEST) { + if (accessToken) { + console.log(`accessToken : ${accessToken}`); + view =
; + } else { + console.log(`accessToken : ${accessToken}`); + view = ; + } + } else if (props.userStore.userStatus === USER_STATUS.USER) { if (accessToken) { + console.log(`accessToken : ${accessToken}`); view =
; } else { + console.log(`accessToken : ${accessToken}`); view = ; } } diff --git a/app/src/database/UserData.js b/app/src/database/UserData.js deleted file mode 100644 index 3e9c808..0000000 --- a/app/src/database/UserData.js +++ /dev/null @@ -1 +0,0 @@ -import Realm from 'realm'; From 798cf45ec5bc2bd2f6254b654057f72bf97da00f Mon Sep 17 00:00:00 2001 From: jinsumin Date: Fri, 5 Feb 2021 01:22:22 +0900 Subject: [PATCH 09/11] update some error codes --- App.js | 20 ++++++++++---------- app/src/table/AuthTable.js | 4 ++-- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/App.js b/App.js index a4a0371..004e4ab 100644 --- a/App.js +++ b/App.js @@ -1,6 +1,7 @@ import { StyleSheet, View } from 'react-native'; import React, { useEffect } from 'react'; import { inject, observer } from 'mobx-react'; +import Realm from 'realm'; import AuthTable from './app/src/table/AuthTable'; import Splash from './app/src/view/Splash'; import { USER_STATUS } from './app/src/constant/UserStatus'; @@ -13,23 +14,22 @@ const App = (props) => { useEffect(() => { const getAccessToken = async () => { try { - accessToken = await AuthTable.objects('Auth'); + await Realm.open({ schema: [AuthTable] }).then((realm) => { + return realm.objects(accessToken); + }); } catch (e) { console.log('no access token'); } - return accessToken; + return null; }; const testAccessToken = async () => { - await AuthTable.write(() => { - try { - AuthTable.create('Auth', { - accessToken: 'ship_sang_token', - }); - } catch (e) { - console.log('write error'); - } + await Realm.open({ schema: [AuthTable] }).then((realm) => { + realm.write(() => { + realm.create('Auth', { accessToken: 'new_sang_token' }); + }); }); + accessToken = getAccessToken(); }; diff --git a/app/src/table/AuthTable.js b/app/src/table/AuthTable.js index bcb8a62..4c87285 100644 --- a/app/src/table/AuthTable.js +++ b/app/src/table/AuthTable.js @@ -4,7 +4,7 @@ import AuthDto from '../dto/AuthDto'; export default class AuthTable { create = async (authDto: AuthDto) => { await Realm.open({ schema: [AuthTable] }).then((realm) => { - return realm.create('User', { + return realm.create('Auth', { name: authDto.name, }); }); @@ -12,7 +12,7 @@ export default class AuthTable { } AuthTable.schema = { - name: 'auth', + name: 'Auth', properties: { accessToken: 'string', }, From 504ac6ae3e2f4c1da4f13f7e31e8f0cc6428bcfc Mon Sep 17 00:00:00 2001 From: jinsumin Date: Sat, 6 Feb 2021 13:46:15 +0900 Subject: [PATCH 10/11] update error code --- App.js | 48 ++++++++++++++++++++------------------ app/src/table/AuthTable.js | 2 +- 2 files changed, 26 insertions(+), 24 deletions(-) diff --git a/App.js b/App.js index 004e4ab..5fc6818 100644 --- a/App.js +++ b/App.js @@ -11,29 +11,35 @@ import Entrance from './app/src/view/entrance/Entrance'; const App = (props) => { let accessToken = null; - useEffect(() => { - const getAccessToken = async () => { - try { - await Realm.open({ schema: [AuthTable] }).then((realm) => { - return realm.objects(accessToken); - }); - } catch (e) { - console.log('no access token'); - } - return null; - }; - - const testAccessToken = async () => { - await Realm.open({ schema: [AuthTable] }).then((realm) => { - realm.write(() => { - realm.create('Auth', { accessToken: 'new_sang_token' }); - }); + const getAccessToken = () => { + Realm.open({ schema: [AuthTable] }) + .then((realm) => { + // return realm.objects('Auth').filtered('accessToken = $0', accessToken); + console.log(realm.objects('Auth')); + return realm.objects('Auth'); + }) + .catch(() => { + console.log('can not open table'); }); + return null; + }; - accessToken = getAccessToken(); + useEffect(() => { + const testAccessToken = (testToken: String) => { + console.log(`input value : ${testToken}`); + Realm.open({ schema: [AuthTable] }) + .then((realm) => { + realm.write(() => { + realm.create('Auth', { accessToken: testToken }); + accessToken = getAccessToken(); + }); + }) + .catch(() => { + console.log('can not write table'); + }); }; - testAccessToken().then(); + testAccessToken('ship_sang_token'); }, []); /* async componentDidMount() { @@ -47,18 +53,14 @@ const App = (props) => { view = ; } else if (props.userStore.userStatus === USER_STATUS.GUEST) { if (accessToken) { - console.log(`accessToken : ${accessToken}`); view =
; } else { - console.log(`accessToken : ${accessToken}`); view = ; } } else if (props.userStore.userStatus === USER_STATUS.USER) { if (accessToken) { - console.log(`accessToken : ${accessToken}`); view =
; } else { - console.log(`accessToken : ${accessToken}`); view = ; } } diff --git a/app/src/table/AuthTable.js b/app/src/table/AuthTable.js index 4c87285..75a4f8f 100644 --- a/app/src/table/AuthTable.js +++ b/app/src/table/AuthTable.js @@ -5,7 +5,7 @@ export default class AuthTable { create = async (authDto: AuthDto) => { await Realm.open({ schema: [AuthTable] }).then((realm) => { return realm.create('Auth', { - name: authDto.name, + accessToken: authDto.accessToken, }); }); }; From a795c71ad9eccb5d955734a2b82a6da47277fd6e Mon Sep 17 00:00:00 2001 From: jinsumin Date: Sat, 6 Feb 2021 21:14:29 +0900 Subject: [PATCH 11/11] update some error codes --- App.js | 23 +++++++++++++---------- app/src/table/AuthTable.js | 2 +- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/App.js b/App.js index 5fc6818..cfd69e0 100644 --- a/App.js +++ b/App.js @@ -11,12 +11,10 @@ import Entrance from './app/src/view/entrance/Entrance'; const App = (props) => { let accessToken = null; - const getAccessToken = () => { - Realm.open({ schema: [AuthTable] }) + const getAccessToken = async () => { + await Realm.open({ schema: [AuthTable] }) .then((realm) => { - // return realm.objects('Auth').filtered('accessToken = $0', accessToken); - console.log(realm.objects('Auth')); - return realm.objects('Auth'); + return realm.objects('Auth').sorted('accessToken'); }) .catch(() => { console.log('can not open table'); @@ -25,13 +23,14 @@ const App = (props) => { }; useEffect(() => { - const testAccessToken = (testToken: String) => { + const testAccessToken = async (testToken: String) => { console.log(`input value : ${testToken}`); - Realm.open({ schema: [AuthTable] }) + await Realm.open({ schema: [AuthTable] }) .then((realm) => { realm.write(() => { realm.create('Auth', { accessToken: testToken }); accessToken = getAccessToken(); + console.log(accessToken); }); }) .catch(() => { @@ -39,7 +38,7 @@ const App = (props) => { }); }; - testAccessToken('ship_sang_token'); + testAccessToken('nothing').then(); }, []); /* async componentDidMount() { @@ -52,15 +51,19 @@ const App = (props) => { if (props.userStore.userStatus === USER_STATUS.READY) { view = ; } else if (props.userStore.userStatus === USER_STATUS.GUEST) { - if (accessToken) { + if (accessToken != null) { + console.log(`accessToken2 : ${accessToken}`); view =
; } else { + console.log(`accessToken2 : ${accessToken}`); view = ; } } else if (props.userStore.userStatus === USER_STATUS.USER) { - if (accessToken) { + if (accessToken != null) { + console.log(`accessToken2 : ${accessToken}`); view =
; } else { + console.log(`accessToken2 : ${accessToken}`); view = ; } } diff --git a/app/src/table/AuthTable.js b/app/src/table/AuthTable.js index 75a4f8f..f85c49d 100644 --- a/app/src/table/AuthTable.js +++ b/app/src/table/AuthTable.js @@ -14,6 +14,6 @@ export default class AuthTable { AuthTable.schema = { name: 'Auth', properties: { - accessToken: 'string', + accessToken: 'string?', }, };