Skip to content

Commit facf425

Browse files
committed
bugfix
1 parent 772b0b0 commit facf425

4 files changed

Lines changed: 71 additions & 32 deletions

File tree

mobx/src/pages/Home/index.jsx

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ class Home extends React.Component {
1414

1515
this.state = {
1616
username: '',
17+
selectUsername: '',
1718
userPageIndex: 1,
1819
followersPageIndex: 1,
1920
followingsPageIndex: 1
@@ -32,9 +33,18 @@ class Home extends React.Component {
3233
}
3334

3435
onSelectUser = item => {
35-
let username = item.login
36-
this.props.followersStore.getFollowers(username, this.state.followersPageIndex)
37-
this.props.followingsStore.getFollowings(username, this.state.followersPageIndex)
36+
let selectUsername = item.login
37+
38+
this.setState(() => {
39+
return {
40+
selectUsername,
41+
followersPageIndex: 1,
42+
followingsPageIndex: 1,
43+
}
44+
}, () => {
45+
this.props.followersStore.getFollowers(selectUsername, this.state.followersPageIndex)
46+
this.props.followingsStore.getFollowings(selectUsername, this.state.followersPageIndex)
47+
})
3848
}
3949

4050
render() {
@@ -77,7 +87,7 @@ class Home extends React.Component {
7787

7888
<div styleName="followers">
7989
<List
80-
title="fllowers"
90+
title={`${this.state.selectUsername} fllowers`}
8191
data={this.props.followersStore.data}
8292
loading={this.props.followersStore.loading}
8393
error={this.props.followersStore.error}
@@ -87,21 +97,21 @@ class Home extends React.Component {
8797
this.setState({
8898
followersPageIndex: currentPage - 1
8999
})
90-
this.props.followersStore.getFollowers(this.state.username, currentPage - 1)
100+
this.props.followersStore.getFollowers(this.state.selectUsername, currentPage - 1)
91101
}}
92102
onClickNext={() => {
93103
let currentPage = this.state.followersPageIndex
94104
this.setState({
95105
followersPageIndex: currentPage + 1
96106
})
97-
this.props.followersStore.getFollowers(this.state.username, currentPage + 1)
107+
this.props.followersStore.getFollowers(this.state.selectUsername, currentPage + 1)
98108
}}
99109
/>
100110
</div>
101111

102112
<div styleName="followings">
103113
<List
104-
title="followings"
114+
title={`${this.state.selectUsername} followings`}
105115
data={this.props.followingsStore.data}
106116
loading={this.props.followingsStore.loading}
107117
error={this.props.followingsStore.error}
@@ -111,14 +121,14 @@ class Home extends React.Component {
111121
this.setState({
112122
followingsPageIndex: currentPage - 1
113123
})
114-
this.props.followingsStore.getFollowings(this.state.username, currentPage - 1)
124+
this.props.followingsStore.getFollowings(this.state.selectUsername, currentPage - 1)
115125
}}
116126
onClickNext={() => {
117127
let currentPage = this.state.followingsPageIndex
118128
this.setState({
119129
followingsPageIndex: currentPage + 1
120130
})
121-
this.props.followingsStore.getFollowings(this.state.username, currentPage + 1)
131+
this.props.followingsStore.getFollowings(this.state.selectUsername, currentPage + 1)
122132
}}
123133
/>
124134
</div>

redux-observable/src/pages/Home/index.jsx

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ class App extends React.Component {
2727

2828
this.state = {
2929
username: '',
30+
selectUsername: '',
3031
userPageIndex: 1,
3132
followersPageIndex: 1,
3233
followingsPageIndex: 1
@@ -45,9 +46,18 @@ class App extends React.Component {
4546
}
4647

4748
onSelectUser = item => {
48-
let username = item.login
49-
this.props.dispatch(getFollowers(username, this.state.followersPageIndex))
50-
this.props.dispatch(getFollowings(username, this.state.followingsPageIndex))
49+
let selectUsername = item.login
50+
51+
this.setState(() => {
52+
return {
53+
selectUsername,
54+
followersPageIndex: 1,
55+
followingsPageIndex: 1,
56+
}
57+
}, () => {
58+
this.props.dispatch(getFollowers(selectUsername, this.state.followersPageIndex))
59+
this.props.dispatch(getFollowings(selectUsername, this.state.followingsPageIndex))
60+
})
5161
}
5262

5363
render() {
@@ -91,7 +101,7 @@ class App extends React.Component {
91101

92102
<div styleName="followers">
93103
<List
94-
title="fllowers"
104+
title={`${this.state.selectUsername} fllowers`}
95105
data={this.props.followers.data}
96106
loading={this.props.followers.loading}
97107
error={this.props.followers.error}
@@ -101,7 +111,7 @@ class App extends React.Component {
101111
this.setState({
102112
followersPageIndex: currentPage - 1
103113
})
104-
this.props.dispatch(getFollowers(this.state.username, currentPage - 1))
114+
this.props.dispatch(getFollowers(this.state.selectUsername, currentPage - 1))
105115
}}
106116
onClickNext={() => {
107117
let currentPage = this.state.followersPageIndex
@@ -115,7 +125,7 @@ class App extends React.Component {
115125

116126
<div styleName="followings">
117127
<List
118-
title="followings"
128+
title={`${this.state.selectUsername} followings`}
119129
data={this.props.followings.data}
120130
loading={this.props.followings.loading}
121131
error={this.props.followings.error}
@@ -125,14 +135,14 @@ class App extends React.Component {
125135
this.setState({
126136
followingsPageIndex: currentPage - 1
127137
})
128-
this.props.dispatch(getFollowings(this.state.username, currentPage - 1))
138+
this.props.dispatch(getFollowings(this.state.selectUsername, currentPage - 1))
129139
}}
130140
onClickNext={() => {
131141
let currentPage = this.state.followingsPageIndex
132142
this.setState({
133143
followingsPageIndex: currentPage + 1
134144
})
135-
this.props.dispatch(getFollowings(this.state.username, currentPage + 1))
145+
this.props.dispatch(getFollowings(this.state.selectUsername, currentPage + 1))
136146
}}
137147
/>
138148
</div>

redux-saga/src/pages/Home/index.jsx

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ class Home extends React.Component {
2727

2828
this.state = {
2929
username: '',
30+
selectUsername: '',
3031
userPageIndex: 1,
3132
followersPageIndex: 1,
3233
followingsPageIndex: 1
@@ -46,8 +47,16 @@ class Home extends React.Component {
4647

4748
onSelectUser = item => {
4849
let username = item.login
49-
this.props.dispatch(getFollowers(username, this.state.followersPageIndex))
50-
this.props.dispatch(getFollowings(username, this.state.followingsPageIndex))
50+
this.setState(() => {
51+
return {
52+
selectUsername: username,
53+
followersPageIndex: 1,
54+
followingsPageIndex: 1,
55+
}
56+
}, () => {
57+
this.props.dispatch(getFollowers(username, this.state.followersPageIndex))
58+
this.props.dispatch(getFollowings(username, this.state.followingsPageIndex))
59+
})
5160
}
5261

5362
render() {
@@ -91,7 +100,7 @@ class Home extends React.Component {
91100

92101
<div styleName="followers">
93102
<List
94-
title="fllowers"
103+
title={`${this.state.selectUsername} fllowers`}
95104
data={this.props.followers.data}
96105
loading={this.props.followers.loading}
97106
error={this.props.followers.error}
@@ -101,21 +110,21 @@ class Home extends React.Component {
101110
this.setState({
102111
followersPageIndex: currentPage - 1
103112
})
104-
this.props.dispatch(getFollowers(this.state.username, currentPage - 1))
113+
this.props.dispatch(getFollowers(this.state.selectUsername, currentPage - 1))
105114
}}
106115
onClickNext={() => {
107116
let currentPage = this.state.followersPageIndex
108117
this.setState({
109118
followersPageIndex: currentPage + 1
110119
})
111-
this.props.dispatch(getFollowers(this.state.username, currentPage + 1))
120+
this.props.dispatch(getFollowers(this.state.selectUsername, currentPage + 1))
112121
}}
113122
/>
114123
</div>
115124

116125
<div styleName="followings">
117126
<List
118-
title="followings"
127+
title={`${this.state.selectUsername} followings`}
119128
data={this.props.followings.data}
120129
loading={this.props.followings.loading}
121130
error={this.props.followings.error}

redux-thunk/src/pages/Home/index.jsx

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,13 @@ export default
2121
}
2222
)
2323
)
24-
class Home extends React.Component {
24+
class App extends React.Component {
2525
constructor(props) {
2626
super(props)
2727

2828
this.state = {
2929
username: '',
30+
selectUsername: '',
3031
userPageIndex: 1,
3132
followersPageIndex: 1,
3233
followingsPageIndex: 1
@@ -45,9 +46,18 @@ class Home extends React.Component {
4546
}
4647

4748
onSelectUser = item => {
48-
let username = item.login
49-
this.props.dispatch(getFollowers(username, this.state.followersPageIndex))
50-
this.props.dispatch(getFollowings(username, this.state.followingsPageIndex))
49+
let selectUsername = item.login
50+
51+
this.setState(() => {
52+
return {
53+
selectUsername,
54+
followersPageIndex: 1,
55+
followingsPageIndex: 1,
56+
}
57+
}, () => {
58+
this.props.dispatch(getFollowers(selectUsername, this.state.followersPageIndex))
59+
this.props.dispatch(getFollowings(selectUsername, this.state.followingsPageIndex))
60+
})
5161
}
5262

5363
render() {
@@ -91,7 +101,7 @@ class Home extends React.Component {
91101

92102
<div styleName="followers">
93103
<List
94-
title="fllowers"
104+
title={`${this.state.selectUsername} fllowers`}
95105
data={this.props.followers.data}
96106
loading={this.props.followers.loading}
97107
error={this.props.followers.error}
@@ -101,7 +111,7 @@ class Home extends React.Component {
101111
this.setState({
102112
followersPageIndex: currentPage - 1
103113
})
104-
this.props.dispatch(getFollowers(this.state.username, currentPage - 1))
114+
this.props.dispatch(getFollowers(this.state.selectUsername, currentPage - 1))
105115
}}
106116
onClickNext={() => {
107117
let currentPage = this.state.followersPageIndex
@@ -115,7 +125,7 @@ class Home extends React.Component {
115125

116126
<div styleName="followings">
117127
<List
118-
title="followings"
128+
title={`${this.state.selectUsername} followings`}
119129
data={this.props.followings.data}
120130
loading={this.props.followings.loading}
121131
error={this.props.followings.error}
@@ -125,14 +135,14 @@ class Home extends React.Component {
125135
this.setState({
126136
followingsPageIndex: currentPage - 1
127137
})
128-
this.props.dispatch(getFollowings(this.state.username, currentPage - 1))
138+
this.props.dispatch(getFollowings(this.state.selectUsername, currentPage - 1))
129139
}}
130140
onClickNext={() => {
131141
let currentPage = this.state.followingsPageIndex
132142
this.setState({
133143
followingsPageIndex: currentPage + 1
134144
})
135-
this.props.dispatch(getFollowings(this.state.username, currentPage + 1))
145+
this.props.dispatch(getFollowings(this.state.selectUsername, currentPage + 1))
136146
}}
137147
/>
138148
</div>

0 commit comments

Comments
 (0)