Explorar o código

fix a bug of no render change when submit in config page

ioobot %!s(int64=7) %!d(string=hai) anos
pai
achega
1c50bdc860
Modificáronse 4 ficheiros con 80 adicións e 83 borrados
  1. 64 67
      .idea/workspace.xml
  2. 1 2
      src/app/index.js
  3. 10 5
      src/config/diff/index.js
  4. 5 9
      src/config/index.js

+ 64 - 67
.idea/workspace.xml

@@ -2,13 +2,9 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="93d86d6a-0860-401c-996e-30fc26553ffc" name="Default Changelist" comment="">
-      <change afterPath="$PROJECT_DIR$/src/config/diff/index.js" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/app/index.js" beforeDir="false" afterPath="$PROJECT_DIR$/src/app/index.js" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/config/index.css" beforeDir="false" afterPath="$PROJECT_DIR$/src/config/index.css" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/config/diff/index.js" beforeDir="false" afterPath="$PROJECT_DIR$/src/config/diff/index.js" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/config/index.js" beforeDir="false" afterPath="$PROJECT_DIR$/src/config/index.js" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/schema/change/index.js" beforeDir="false" afterPath="$PROJECT_DIR$/src/schema/change/index.js" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/schema/index.js" beforeDir="false" afterPath="$PROJECT_DIR$/src/schema/index.js" afterDir="false" />
     </list>
     <ignored path="$PROJECT_DIR$/.tmp/" />
     <ignored path="$PROJECT_DIR$/temp/" />
@@ -32,7 +28,7 @@
           <entry key="css" value="11" />
           <entry key="html" value="1" />
           <entry key="ico" value="1" />
-          <entry key="js" value="21" />
+          <entry key="js" value="22" />
           <entry key="json" value="4" />
           <entry key="lock" value="2" />
           <entry key="png" value="2" />
@@ -44,7 +40,7 @@
           <entry key="HTML" value="1" />
           <entry key="Image" value="3" />
           <entry key="JSON" value="4" />
-          <entry key="JavaScript" value="21" />
+          <entry key="JavaScript" value="22" />
           <entry key="yarn.lock" value="2" />
         </counts>
       </usages-collector>
@@ -56,13 +52,13 @@
       <usages-collector id="statistics.file.extensions.edit">
         <counts>
           <entry key="css" value="309" />
-          <entry key="js" value="13115" />
+          <entry key="js" value="13322" />
         </counts>
       </usages-collector>
       <usages-collector id="statistics.file.types.edit">
         <counts>
           <entry key="CSS" value="309" />
-          <entry key="JavaScript" value="13115" />
+          <entry key="JavaScript" value="13322" />
         </counts>
       </usages-collector>
     </session>
@@ -72,8 +68,8 @@
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/src/app/index.js">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="848">
-              <caret line="189" column="21" lean-forward="true" selection-start-line="189" selection-start-column="21" selection-end-line="189" selection-end-column="21" />
+            <state relative-caret-position="241">
+              <caret line="163" lean-forward="true" selection-start-line="163" selection-end-line="163" />
               <folding>
                 <element signature="e#0#39#0" expanded="true" />
                 <element signature="e#827#875#0" />
@@ -111,8 +107,20 @@
       <file pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/src/config/diff/index.js">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="1746">
-              <caret line="159" column="26" lean-forward="true" selection-start-line="159" selection-start-column="26" selection-end-line="159" selection-end-column="26" />
+            <state relative-caret-position="440">
+              <caret line="86" column="70" selection-start-line="86" selection-start-column="70" selection-end-line="86" selection-end-column="70" />
+              <folding>
+                <element signature="e#0#39#0" expanded="true" />
+              </folding>
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/src/config/index.js">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="260">
+              <caret line="58" column="44" selection-start-line="58" selection-start-column="33" selection-end-line="58" selection-end-column="44" />
               <folding>
                 <element signature="e#0#39#0" expanded="true" />
               </folding>
@@ -171,18 +179,6 @@
           </provider>
         </entry>
       </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/schema/index.js">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="145">
-              <caret line="69" column="22" lean-forward="true" selection-start-line="69" selection-start-column="22" selection-end-line="69" selection-end-column="22" />
-              <folding>
-                <element signature="e#0#39#0" expanded="true" />
-              </folding>
-            </state>
-          </provider>
-        </entry>
-      </file>
     </leaf>
   </component>
   <component name="FileTemplateManagerImpl">
@@ -213,6 +209,7 @@
       <find>changeName</find>
       <find>ADD SC</find>
       <find>add</find>
+      <find>console.log</find>
     </findStrings>
   </component>
   <component name="Git.Settings">
@@ -240,8 +237,8 @@
         <option value="$PROJECT_DIR$/src/schema/index.js" />
         <option value="$PROJECT_DIR$/src/schema/change/index.js" />
         <option value="$PROJECT_DIR$/src/config/index.js" />
-        <option value="$PROJECT_DIR$/src/config/diff/index.js" />
         <option value="$PROJECT_DIR$/src/app/index.js" />
+        <option value="$PROJECT_DIR$/src/config/diff/index.js" />
       </list>
     </option>
   </component>
@@ -262,8 +259,8 @@
     </packageJsonPaths>
   </component>
   <component name="ProjectFrameBounds">
-    <option name="x" value="497" />
-    <option name="y" value="31" />
+    <option name="x" value="501" />
+    <option name="y" value="265" />
     <option name="width" value="2063" />
     <option name="height" value="1341" />
   </component>
@@ -375,15 +372,15 @@
       <option name="number" value="Default" />
       <option name="presentableId" value="Default" />
       <updated>1540954591627</updated>
-      <workItem from="1540954593719" duration="68432000" />
+      <workItem from="1540954593719" duration="70074000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="68432000" />
+    <option name="totallyTimeSpent" value="70074000" />
   </component>
   <component name="ToolWindowManager">
-    <frame x="497" y="31" width="2063" height="1341" extended-state="0" />
+    <frame x="501" y="265" width="2063" height="1341" extended-state="0" />
     <editor active="true" />
     <layout>
       <window_info id="npm" side_tool="true" />
@@ -392,7 +389,7 @@
       <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
       <window_info anchor="bottom" id="Docker" show_stripe_button="false" />
       <window_info anchor="bottom" id="Version Control" show_stripe_button="false" />
-      <window_info anchor="bottom" id="Terminal" weight="0.3002402" />
+      <window_info anchor="bottom" id="Terminal" visible="true" weight="0.3002402" />
       <window_info anchor="bottom" id="Event Log" side_tool="true" />
       <window_info anchor="bottom" id="Message" order="0" />
       <window_info anchor="bottom" id="Find" order="1" weight="0.47317854" />
@@ -491,13 +488,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/config/index.css">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="361">
-          <caret line="19" lean-forward="true" selection-start-line="19" selection-end-line="19" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/src/schema/change/index.js">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="1064">
@@ -508,32 +498,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/config/index.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="551">
-          <caret line="54" column="20" lean-forward="true" selection-start-line="54" selection-start-column="20" selection-end-line="54" selection-end-column="20" />
-          <folding>
-            <element signature="e#0#39#0" expanded="true" />
-          </folding>
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/app/index.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="848">
-          <caret line="189" column="21" lean-forward="true" selection-start-line="189" selection-start-column="21" selection-end-line="189" selection-end-column="21" />
-          <folding>
-            <element signature="e#0#39#0" expanded="true" />
-            <element signature="e#827#875#0" />
-            <element signature="e#959#1012#0" />
-            <element signature="e#967#1544#0" />
-            <element signature="e#1058#1636#0" />
-            <element signature="e#1114#1636#0" />
-            <element signature="e#3113#3488#0" />
-          </folding>
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/src/serviceWorker.js">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="418">
@@ -571,10 +535,43 @@
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/src/config/index.css">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="361">
+          <caret line="19" lean-forward="true" selection-start-line="19" selection-end-line="19" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/config/index.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="260">
+          <caret line="58" column="44" selection-start-line="58" selection-start-column="33" selection-end-line="58" selection-end-column="44" />
+          <folding>
+            <element signature="e#0#39#0" expanded="true" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/app/index.js">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="241">
+          <caret line="163" lean-forward="true" selection-start-line="163" selection-end-line="163" />
+          <folding>
+            <element signature="e#0#39#0" expanded="true" />
+            <element signature="e#827#875#0" />
+            <element signature="e#959#1012#0" />
+            <element signature="e#967#1544#0" />
+            <element signature="e#1058#1636#0" />
+            <element signature="e#1114#1636#0" />
+            <element signature="e#3113#3488#0" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
     <entry file="file://$PROJECT_DIR$/src/config/diff/index.js">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="1746">
-          <caret line="159" column="26" lean-forward="true" selection-start-line="159" selection-start-column="26" selection-end-line="159" selection-end-column="26" />
+        <state relative-caret-position="440">
+          <caret line="86" column="70" selection-start-line="86" selection-start-column="70" selection-end-line="86" selection-end-column="70" />
           <folding>
             <element signature="e#0#39#0" expanded="true" />
           </folding>

+ 1 - 2
src/app/index.js

@@ -185,8 +185,7 @@ class App extends Component {
       })
     } else {
       let configs = this.state.configs;
-      console.log(this.state.configs.findIndex(obj => obj.name === name));
-      configs.splice(this.state.configs.findIndex(obj => obj.name === name), 1, content)
+      configs.splice(this.state.configs.findIndex(obj => obj.name === name), 1, content);
       this.setState({
         configs
       })

+ 10 - 5
src/config/diff/index.js

@@ -8,7 +8,7 @@ class Diff extends Component {
   constructor(props) {
     super(props);
     this.state = {
-      config: props.config || {
+      config: props.configs.find(obj => obj.name === props.currentConfig) || {
         name: '',
         schemas: [],
         cloudServer: '',
@@ -67,9 +67,14 @@ class Diff extends Component {
 
   componentWillReceiveProps(next) {
     this.setState({
-      config: next.config
+      config: next.configs.find(obj => obj.name === next.currentConfig) || {
+        name: '',
+        schemas: [],
+        cloudServer: '',
+        database: '',
+        configLocal: {}
+      }
     });
-    console.log(222);
   };
 
   render() {
@@ -79,8 +84,8 @@ class Diff extends Component {
           <p style={{fontSize: 30}}>Local Config</p>
 
           <div style={{marginBottom: 30}}>
-            <p><b>Name: </b></p>
-            <Input disabled value={this.state.config.name} style={{width: 200}} onChange={this.changeName}/>
+            <p><b>Name: {this.state.config.name || 'how about choose / create one in left <------ '}</b></p>
+            {/*<Input value={this.state.config.name} style={{width: 200}} onChange={this.changeName}/>*/}
           </div>
 
           <div style={{marginBottom: 30}}>

+ 5 - 9
src/config/index.js

@@ -13,19 +13,15 @@ class Config extends Component {
   constructor(props) {
     super(props);
     this.state = {
-      noConfig: !props.configs.length,
-      config: '',
-      switch: true
+      currentConfig: '',
+      switch: true,
     };
-    if(!this.state.noConfig) {
-      this.state.config = props.configs[0];
-    }
   }
 
   switchConfig = (name) => {
     return () => {
       this.setState({
-        config: this.props.configs.find(obj=> obj.name === name)
+        currentConfig: name
       })
     }
   };
@@ -37,7 +33,7 @@ class Config extends Component {
         <Row>
           <Col span={6}>
             <div className='warpper'>
-              <div className='current'>{this.state.config.name}</div>
+              <div className='current'>{this.state.currentConfig}</div>
               {
                 this.state.switch?
                   <Button className='add' type='dashed' icon="plus" onClick={()=>{this.setState({switch: false})}}>Add Config</Button> :
@@ -80,7 +76,7 @@ class Config extends Component {
 
           </Col>
           <Col span={18}>
-            <Diff addConfig={this.props.addConfig} deleteConfig={this.props.deleteConfig} config={this.state.config} schemas={this.props.schemas}/>
+            <Diff addConfig={this.props.addConfig} deleteConfig={this.props.deleteConfig} currentConfig={this.state.currentConfig} configs={this.props.configs} schemas={this.props.schemas}/>
           </Col>
         </Row>
       </div>