当前浏览器不支持canvas,请更换浏览器后再试

vue-code-diff

Vue中格式化对比json串插件

安装

yarn add vue-code-diff

npm install vue-code-diff

使用

<template>
  <div>
    <code-diff :old-string="oldStr" :new-string="newStr" :context="10" />
  </div>
</template>

import CodeDiff from 'vue-code-diff'
export default {
  components: {CodeDiff},
  data(){
    return {
      oldStr: 'old code',
      newStr: 'new code'
    }
  },

  mounted() {
    this.getgrouplist();
  },
  methods: {

    getgrouplist() {

      let oldJSON = {

                  measures: [
                      {
                          metric: 'coverage测试一下',
                          value: '0.0',
                          periods: [{ index: 1, value: '0.0' }],
                          component: ' \n \r <br/ > com.umetrip.msg:AirlinesAbnormalTickets',
                      },
                      {
                          metric: 'coverage',
                          value: '0.0',
                          periods: [{ index: 1, value: '0.0' }],
                          component: 'com.umetrip.etd:AirportDelayReason',
                      },
                  ],

    }


    let newJSON = {

                  measures: [
                      {
                          metric: 'coverage小改动',
                          value: '0.0',
                          periods: [{ index: 2, value: '0.1' }],
                          component: 'com.umetrip.msg:AirlinesAbnormalTickets',
                      },
                      {
                          metric: 'coverage',
                          value: '0.0',
                          periods: [{ index: 1, value: '0.0' }],
                          component: 'com.umetrip.etd:AirportDelayReason',
                      },
                  ],

     }

     this.oldStr = JSON.stringify(oldJSON, null, 4);
     this.newStr = JSON.stringify(newJSON, null, 4);
    },
  }

}

参数说明

参数说明类型可选值默认值
old-string 陈旧的字符串 string
new-string 新的字符串 string
context 不同地方上下间隔多少行不隐藏 number
outputFormat 展示的方式 string line-by-line,side-by-side line-by-line
drawFileList 展示对比文件列表 boolean - false
renderNothingWhenEmpty 当无对比时不渲染 boolean - false
diffStyle 每行中对比差异级别 string word, char word
fileName 文件名 string -  
isShowNoChange 当无对比时展示源代码 boolean - false

效果展示

line-by-line

image

side-by-side

image

 

 

 

posted @   高亮uncle  阅读(2891)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示