Fixed bug which caused loading state in GroupForm not to be set correctly

This commit is contained in:
Philipp Czora
2018-08-02 13:47:57 +02:00
parent 1975beff40
commit 55f02238da
3 changed files with 13 additions and 8 deletions

View File

@@ -63,7 +63,7 @@ class GroupForm extends React.Component<Props, State> {
render() { render() {
const { t, loading } = this.props; const { t, loading } = this.props;
const { group } = this.state const group = this.state.group
let nameField = null; let nameField = null;
if (!this.props.group) { if (!this.props.group) {
nameField = ( nameField = (

View File

@@ -18,7 +18,7 @@ type Props = {
}; };
class EditGroup extends React.Component<Props> { class EditGroup extends React.Component<Props> {
groupModified = (group: Group) => { groupModified = (group: Group) => () => {
this.props.history.push(`/group/${group.name}`) this.props.history.push(`/group/${group.name}`)
} }
@@ -46,7 +46,9 @@ const mapStateToProps = (state, ownProps) => {
const mapDispatchToProps = (dispatch) => { const mapDispatchToProps = (dispatch) => {
return { return {
modifyGroup: (group: Group, callback?: () => void) => {dispatch(modifyGroup(group, callback))} modifyGroup: (group: Group, callback?: () => void) => {
dispatch(modifyGroup(group, callback))
}
}; };
}; };

View File

@@ -181,7 +181,7 @@ export function createGroupReset() {
// modify group // modify group
export function modifyGroup(group: Group, callback?: () => void) { export function modifyGroup(group: Group, callback?: () => void) {
return function(dispatch: Dispatch) { return function(dispatch: Dispatch) {
dispatch(modifyGroupPending()); dispatch(modifyGroupPending(group));
return apiClient return apiClient
.putWithContentType(group._links.update.href, group, CONTENT_TYPE_GROUP) .putWithContentType(group._links.update.href, group, CONTENT_TYPE_GROUP)
.then(() => { .then(() => {
@@ -196,16 +196,19 @@ export function modifyGroup(group: Group, callback?: () => void) {
}; };
} }
export function modifyGroupPending(): Action { export function modifyGroupPending(group: Group): Action {
return { return {
type: MODIFY_GROUP_PENDING type: MODIFY_GROUP_PENDING,
payload: group,
itemId: group.name
} }
} }
export function modifyGroupSuccess(group: Group): Action { export function modifyGroupSuccess(group: Group): Action {
return { return {
type: MODIFY_GROUP_SUCCESS, type: MODIFY_GROUP_SUCCESS,
payload: group payload: group,
itemId: group.name
} }
} }