Vue中实现JSON字符串代码格式化

1,505 阅读1分钟

在Vue项目开发,遇到一个需求,需要将后台犯规的JSON代码呈现在页面上,并且是格式化的方式,主要实现方式如下:

<a-textarea disabled v-model="resultData" placeholder="结果" allow-clear />

this.resultData = JSON.stringify(response.data.result,null, "  ")

主要是JSON.stringify(response.data.result,null, "  ")这个方法来实现;

格式化后的代码如下:

   [
      {
        "totalLogs": [
          "[121212(1)_72288] [SUCCESS] []",
          "[已全部成功执行] [COMPLETE]"
        ],
        "taskMap": {
          "72288": {
            "gmtCreator": "1734",
            "gmtModifier": "1734",
            "gmtCreate": "2022-09-16 11:41:49",
            "gmtModify": "2022-09-16 11:41:49",
            "id": 429408,
            "parentId": "",
            "taskId": 72288,
            "pipelineId": 10245,
            "projectId": 6394,
            "userId": 1734,
            "status": "SUCCESS",
            "data": {
              "feature_X": "菜品",
              "execution": "predict",
              "model_saved_path": "s3a://ml-model/1734/classification/GBDT_1146_1663222722",
              "max_depth": 5,
              "usr_id": 1734,
              "split_rate": [
                0.8,
                0.2
              ],
              "feature_col": [
                "月售"
              ],
              "source": "g_1734_1662345693723",
              "model_id": 1146,
              "label_col": "推荐人数",
              "algo": "GBDT",
              "target": "pipeline.ml_1734_72288"
            },
            "sqlText": null,
            "output": null,
            "sessionId": 148056,
            "logInfo": null,
            "runTimes": 0,
            "taskName": "121212(1)",
            "type": 7,
            "progress": 100,
            "applicationId": null,
            "gmtRunning": null
          }
        },
        "sessionId": 148056,
        "status": "SUCCESS"
      }
    ]