kaori 4 лет назад
Родитель
Сommit
be5b320f16

+ 4 - 1
src/client/js/components/PasswordResetExecutionForm.jsx

@@ -1,6 +1,7 @@
 import React, { useState } from 'react';
 import PropTypes from 'prop-types';
 import { withTranslation } from 'react-i18next';
+import { withUnstatedContainers } from './UnstatedUtils';
 import AppContainer from '../services/AppContainer';
 import { toastSuccess, toastError } from '../util/apiNotification';
 
@@ -84,9 +85,11 @@ const PasswordResetExecutionForm = (props) => {
   );
 };
 
+const PasswordResetExecutionFormWrapper = withUnstatedContainers(PasswordResetExecutionForm, [AppContainer]);
+
 PasswordResetExecutionForm.propTypes = {
   t: PropTypes.func.isRequired, //  i18next
   appContainer: PropTypes.instanceOf(AppContainer).isRequired,
 };
 
-export default withTranslation()(PasswordResetExecutionForm);
+export default withTranslation()(PasswordResetExecutionFormWrapper);

+ 3 - 1
src/client/js/nologin.jsx

@@ -104,7 +104,9 @@ if (passwordResetExecutionFormElem) {
 
   ReactDOM.render(
     <I18nextProvider i18n={i18n}>
-      <PasswordResetExecutionForm />
+      <Provider inject={[appContainer]}>
+        <PasswordResetExecutionForm />
+      </Provider>
     </I18nextProvider>,
     passwordResetExecutionFormElem,
   );

+ 1 - 1
src/client/js/services/AppContainer.js

@@ -61,7 +61,7 @@ export default class AppContainer extends Container {
     this.rendererInstances = {};
 
     this.apiGet = this.apiGet.bind(this);
-    this.apiPut = this.apiGet.bind(this);
+    this.apiPut = this.apiPut.bind(this);
     this.apiPost = this.apiPost.bind(this);
     this.apiDelete = this.apiDelete.bind(this);
     this.apiRequest = this.apiRequest.bind(this);