mirror of
https://github.com/LemmyNet/lemmy-ui.git
synced 2024-11-22 12:21:13 +00:00
Do not refresh when community is selected in create post (#1042)
This commit is contained in:
parent
7bcf079acf
commit
7720e37a63
2 changed files with 14 additions and 18 deletions
|
@ -20,7 +20,6 @@ import {
|
|||
enableNsfw,
|
||||
getIdFromString,
|
||||
getQueryParams,
|
||||
getQueryString,
|
||||
isBrowser,
|
||||
myAuth,
|
||||
setIsoData,
|
||||
|
@ -77,7 +76,7 @@ export class CreatePost extends Component<
|
|||
|
||||
if (communityRes) {
|
||||
const communityChoice: Choice = {
|
||||
label: communityRes.community_view.community.name,
|
||||
label: communityRes.community_view.community.title,
|
||||
value: communityRes.community_view.community.id.toString(),
|
||||
};
|
||||
|
||||
|
@ -176,18 +175,21 @@ export class CreatePost extends Component<
|
|||
updateUrl({ communityId }: Partial<CreatePostProps>) {
|
||||
const { communityId: urlCommunityId } = getCreatePostQueryParams();
|
||||
|
||||
const queryParams: QueryParams<CreatePostProps> = {
|
||||
communityId: (communityId ?? urlCommunityId)?.toString(),
|
||||
};
|
||||
|
||||
const locationState = this.props.history.location.state as
|
||||
| PostFormParams
|
||||
| undefined;
|
||||
|
||||
this.props.history.replace(
|
||||
`/create_post${getQueryString(queryParams)}`,
|
||||
locationState
|
||||
);
|
||||
const url = new URL(location.href);
|
||||
|
||||
const newId = (communityId ?? urlCommunityId)?.toString();
|
||||
|
||||
if (newId !== undefined) {
|
||||
url.searchParams.set("communityId", newId);
|
||||
} else {
|
||||
url.searchParams.delete("communityId");
|
||||
}
|
||||
|
||||
history.replaceState(locationState, "", url);
|
||||
|
||||
this.fetchCommunity();
|
||||
}
|
||||
|
@ -234,12 +236,12 @@ export class CreatePost extends Component<
|
|||
if (op === UserOperation.GetCommunity) {
|
||||
const {
|
||||
community_view: {
|
||||
community: { name, id },
|
||||
community: { title, id },
|
||||
},
|
||||
} = wsJsonToRes<GetCommunityResponse>(msg);
|
||||
|
||||
this.setState({
|
||||
selectedCommunityChoice: { label: name, value: id.toString() },
|
||||
selectedCommunityChoice: { label: title, value: id.toString() },
|
||||
loading: false,
|
||||
});
|
||||
}
|
||||
|
|
|
@ -644,13 +644,7 @@ export class PostForm extends Component<PostFormProps, PostFormState> {
|
|||
|
||||
handleCommunitySelect(choice: Choice) {
|
||||
if (this.props.onSelectCommunity) {
|
||||
this.setState({
|
||||
loading: true,
|
||||
});
|
||||
|
||||
this.props.onSelectCommunity(choice);
|
||||
|
||||
this.setState({ loading: false });
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue