瀏覽代碼

量表选中项保存

liucf 6 年之前
父節點
當前提交
5cecd2227c
共有 1 個文件被更改,包括 15 次插入13 次删除
  1. 15 13
      src/components/ScaleTable/index.jsx

+ 15 - 13
src/components/ScaleTable/index.jsx

@@ -206,22 +206,24 @@ class ScaleTable extends React.Component{
   }
   componentWillUnmount(){
     // 储存计算结果和选择后的data
-    const {tableId,getResult,parentId,parentIndex,scaleInfo,saveScaleData} = this.props; 
-    const {valueData,scaleResult1} = this.state; 
-    // 替换表格内容
-    let allDatas = scaleInfo[tableId]?JSON.parse(JSON.stringify(scaleInfo[tableId])):'' ;
-    if(allDatas){
-      // allDatas[1].content = JSON.stringify(valueData);
-      for(let i=0; i<allDatas.length; i++){
-        if(allDatas[i].type==1){
-          allDatas[i].content = JSON.stringify(valueData);
+    const {tableId,getResult,parentId,parentIndex,scaleInfo,saveScaleData,formulaResult} = this.props; 
+    const {valueData,scaleResult1,start} = this.state; 
+    // 替换表格内容--1)没有点计算且没有计算结果;2)点了计算
+    const scaleResult = scaleResult1 || formulaResult&&formulaResult[tableId]; //量表计算结果
+    if(start || !scaleResult){
+      let allDatas = scaleInfo[tableId]?JSON.parse(JSON.stringify(scaleInfo[tableId])):'' ;
+      if(allDatas){
+        for(let i=0; i<allDatas.length; i++){
+          if(allDatas[i].type==1){
+            allDatas[i].content = JSON.stringify(valueData);
+          }
         }
+        // 需求:未点计算,直接点确定、关闭也保存选中数据 4-30
+        saveScaleData&&saveScaleData({id:tableId,data:allDatas});
       }
-      // 需求:未点计算,直接点确定、关闭也保存选中数据 4-30
-      saveScaleData&&saveScaleData({id:tableId,data:allDatas});
     }
     
-     if(scaleResult1){
+    if(scaleResult1){
       const params = {
         type:1,
         data:scaleResult1,
@@ -229,7 +231,7 @@ class ScaleTable extends React.Component{
         pIndex:parentIndex
       }
       getResult&&getResult(params);
-     }  
+    }  
   }
   getContent(){ 
     let {selecteds,valueData,start,scaleResult1} = this.state;