Skip to content
This repository was archived by the owner on Jan 3, 2023. It is now read-only.

Commit e1c53dc

Browse files
author
soliury
committed
refactor
1 parent ed84462 commit e1c53dc

File tree

8 files changed

+159
-240
lines changed

8 files changed

+159
-240
lines changed

src/actions/message.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@ import * as messageService from '../services/messageService';
44

55

66
export const getUnreadMessageCount = createAction(types.GET_UNREAD_MESSAGE_COUNT, async()=> {
7-
return await messageService.req.getUnreadMessageCount();
7+
return await messageService.getUnreadMessageCount();
88
});
99

1010

1111
export const markAsRead = createAction(types.MARK_AS_READ, async()=> {
12-
return await messageService.req.markAsRead();
12+
return await messageService.markAsRead();
1313
}, function (resolved, rejected) {
1414
return {
1515
resolved,
@@ -20,7 +20,7 @@ export const markAsRead = createAction(types.MARK_AS_READ, async()=> {
2020

2121

2222
export const getMessageList = createAction(types.GET_MESSAGES_LIST, async()=> {
23-
return await messageService.req.getMessages();
23+
return await messageService.getMessages();
2424
}, ()=> {
2525
return {
2626
sync: 'message'

src/actions/topic.js

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,8 @@ function setMetaId(id) {
1111
}
1212

1313

14-
export const getAllTopicsFromStorage = createAction(types.GET_TOPICS_FROM_STORAGE, topicService.storage.getAllTopics);
15-
16-
1714
export const getTopicsByTab = createAction(types.GET_TOPICS_BY_TAB, async(tab, params)=> {
18-
return await topicService.req.getTopicsByTab(tab, params);
15+
return await topicService.getTopicsByTab(tab, params);
1916
}, (tab)=> {
2017
return {
2118
tab
@@ -24,7 +21,7 @@ export const getTopicsByTab = createAction(types.GET_TOPICS_BY_TAB, async(tab, p
2421

2522

2623
export const updateTopicsByTab = createAction(types.UPDATE_TOPICS_BY_TAB, async(tab)=> {
27-
return await topicService.req.getTopicsByTab(tab, {
24+
return await topicService.getTopicsByTab(tab, {
2825
page: 1
2926
});
3027
}, (tab)=> {
@@ -35,7 +32,7 @@ export const updateTopicsByTab = createAction(types.UPDATE_TOPICS_BY_TAB, async(
3532
});
3633

3734

38-
export const getTopicById = createAction(types.GET_TOPIC_BY_ID, topicService.req.getTopicById, (id)=> {
35+
export const getTopicById = createAction(types.GET_TOPIC_BY_ID, topicService.getTopicById, (id)=> {
3936
return {
4037
id,
4138
sync: 'topic'
@@ -50,7 +47,7 @@ export const removeTopicCacheById = createAction(types.REMOVE_TOPIC_CACHE_BY_ID,
5047
});
5148

5249

53-
export const replyTopicById = createAction(types.REPLY_TOPIC_BY_ID, topicService.req.reply, ({topicId, content, replyId, user}, resolved, rejected)=> {
50+
export const replyTopicById = createAction(types.REPLY_TOPIC_BY_ID, topicService.reply, ({topicId, content, replyId, user}, resolved, rejected)=> {
5451
return {
5552
id: topicId,
5653
content: markdown.parse(content),
@@ -62,7 +59,7 @@ export const replyTopicById = createAction(types.REPLY_TOPIC_BY_ID, topicService
6259
});
6360

6461

65-
export const upReply = createAction(types.UP_REPLY, topicService.req.upReply, ({topicId, replyId, userId, resolved, rejected})=> {
62+
export const upReply = createAction(types.UP_REPLY, topicService.upReply, ({topicId, replyId, userId, resolved, rejected})=> {
6663
return {
6764
id: topicId,
6865
replyId,
@@ -73,7 +70,7 @@ export const upReply = createAction(types.UP_REPLY, topicService.req.upReply, ({
7370
});
7471

7572

76-
export const publish = createAction(types.PUBLISH, topicService.req.publish, ({resolved, rejected})=> {
73+
export const publish = createAction(types.PUBLISH, topicService.publish, ({resolved, rejected})=> {
7774
return {
7875
resolved,
7976
rejected

src/actions/user.js

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,11 @@ import {createAction} from 'redux-actions';
22
import * as types from '../constants/ActionTypes';
33
import * as userService from '../services/userService';
44
import * as tokenService from '../services/token';
5-
import * as topicService from '../services/topicService';
6-
import * as messageService from '../services/messageService';
5+
import * as storageService from '../services/storage';
76

87
export const checkToken = createAction(types.CHECK_TOKEN, async(token)=> {
9-
const userLoginInfo = await userService.req.checkToken(token);
10-
const user = await userService.req
8+
const userLoginInfo = await userService.checkToken(token);
9+
const user = await userService
1110
.getUserInfo(userLoginInfo.loginname)
1211
.then((data)=> {
1312
return {
@@ -25,21 +24,8 @@ export const checkToken = createAction(types.CHECK_TOKEN, async(token)=> {
2524
});
2625

2726

28-
export const getUserFromStorage = createAction(types.GET_USER_FROM_STORAGE, async()=> {
29-
return await userService.storage.getUser()
30-
.then(user=> {
31-
tokenService.setToken(user.secret.token);
32-
return user;
33-
});
34-
}, (resolved)=> {
35-
return {
36-
resolved
37-
}
38-
});
39-
40-
4127
export const updateClientUserInfo = createAction(types.UPDATE_CLIENT_USER_INFO, async(user)=> {
42-
return await userService.req.getUserInfo(user.secret.loginname)
28+
return await userService.getUserInfo(user.secret.loginname)
4329
.then(userInfo=> {
4430
if (userInfo) {
4531
return userInfo;
@@ -54,7 +40,7 @@ export const updateClientUserInfo = createAction(types.UPDATE_CLIENT_USER_INFO,
5440

5541

5642
export const getUserInfo = createAction(types.GET_USER_INFO, async(loginName)=> {
57-
return await userService.req.getUserInfo(loginName)
43+
return await userService.getUserInfo(loginName)
5844
.then(userInfo=> {
5945
if (userInfo) {
6046
return userInfo;
@@ -79,8 +65,13 @@ export const logout = function () {
7965
};
8066

8167
export const clear = function () {
82-
topicService.storage.removeAllTopics();
83-
messageService.storage.clear();
68+
try {
69+
storageService.removeItem('topic');
70+
storageService.removeItem('message');
71+
}
72+
catch (err) {
73+
console.warn(err);
74+
}
8475
return {
8576
type: types.CLEAR
8677
}

src/services/messageService.js

Lines changed: 39 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,40 @@
11
import * as requestService from './request';
2-
import * as storageService from './storage';
3-
import { getToken, setToken } from './token';
4-
5-
6-
export const storage = {
7-
get: function () {
8-
return storageService.getItem('messages');
9-
},
10-
11-
12-
clear: function () {
13-
return storageService.removeItem('messages');
14-
}
15-
};
16-
17-
18-
export const req = {
19-
getMessages: function () {
20-
return requestService.get('/messages', {
21-
accesstoken: getToken()
22-
})
23-
.then((data)=>data.data)
24-
.then((messages)=> {
25-
if (messages) {
26-
return messages;
27-
}
28-
else {
29-
throw 'getMessagesFailed'
30-
}
31-
})
32-
},
33-
34-
35-
markAsRead: function () {
36-
return requestService.post('/message/mark_all', {
37-
accesstoken: getToken()
38-
})
39-
.then(data=> {
40-
if (data.success) {
41-
return data
42-
}
43-
else {
44-
throw 'markAsReadFailed'
45-
}
46-
})
47-
},
48-
49-
50-
getUnreadMessageCount: function () {
51-
return requestService.get('/message/count', {
52-
accesstoken: getToken()
53-
})
54-
.then(data=>data.data)
55-
}
56-
};
2+
import {getToken, setToken} from './token';
3+
4+
5+
export function getMessages() {
6+
return requestService.get('/messages', {
7+
accesstoken: getToken()
8+
})
9+
.then((data)=>data.data)
10+
.then((messages)=> {
11+
if (messages) {
12+
return messages;
13+
}
14+
else {
15+
throw 'getMessagesFailed'
16+
}
17+
})
18+
}
19+
20+
21+
export function markAsRead() {
22+
return requestService.post('/message/mark_all', {
23+
accesstoken: getToken()
24+
})
25+
.then(data=> {
26+
if (data.success) {
27+
return data
28+
}
29+
else {
30+
throw 'markAsReadFailed'
31+
}
32+
})
33+
}
34+
35+
export function getUnreadMessageCount() {
36+
return requestService.get('/message/count', {
37+
accesstoken: getToken()
38+
})
39+
.then(data=>data.data)
40+
}

src/services/storage.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import React,{
1+
import React, {
22
AsyncStorage
33
} from 'react-native';
44

55

6-
export function setItem(key, value) {
6+
export async function setItem(key, value) {
77
if (value == null) return Promise.reject('StorageService Error: value should not be null or undefined');
8-
return AsyncStorage.setItem(key, JSON.stringify(value));
8+
return await AsyncStorage.setItem(key, JSON.stringify(value));
99
}
1010

1111

@@ -20,7 +20,9 @@ export function getItem(key) {
2020
export const clear = AsyncStorage.clear;
2121

2222

23-
export const removeItem = AsyncStorage.removeItem;
23+
export async function removeItem(...args) {
24+
return await AsyncStorage.removeItem(...args);
25+
}
2426

2527

2628
export function multiGet(keys) {

0 commit comments

Comments
 (0)