Vue中JSON格式(新|旧)进行比较 vue-code-diff

npm install vue-code-diff -S

<template>
  <div class="compare">
    <CodeDiff class="center"
              :old-string="oldStrToCompare"
              :new-string="newStrToCompare"
              :drawFileList="true"
              :context="1000"
              outputFormat="side-by-side" />
  </div>
</template>

<script>
import CodeDiff from 'vue-code-diff'

export default {
  components: {
    CodeDiff,
  },
  data() {
    return {
      oldStr: [
        {
          date: '2016-05-02',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄',
        },
        {
          date: '2016-05-04',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1517 弄',
        },
        {
          date: '2016-05-01',
          name: '虎',
          address: '上海市普路 1519 弄',
        },
        {
          date: '2016-05-03',
          name: '王',
          address: '上海市普陀区金沙江路 1516 弄',
        },
      ],
      newStr: [
        {
          date: '2016-05-02',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄',
        },
        {
          date: '2016-05-04',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1517 弄',
        },
        {
          date: '2016-05-01',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1519 弄',
        },
        {
          date: '2016-05-03',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1516 弄',
        },
      ],
    }
  },
  computed: {
    oldStrToCompare() {
      return JSON.stringify(this.oldStr, null, 2) //重点! 格式化添加空格
    },
    newStrToCompare() {
      return JSON.stringify(this.newStr, null, 2)//重点! 格式化添加空格
    },
  },
}
</script>

<style scoped>
.center {
  max-height: 600px;
  overflow-y: auto;
}
}

</style>

结果展示



如需要起始行左右对齐 :

/* 样式穿透-起始行左右对齐,*/
.center>>>.d2h-code-side-line{
  height:25px;
}


 vue-code-diff 推荐: https://github.com/ddchef/vue-code-diff#%E5%AE%89%E8%A3%85

### 如何在 VSCode 中调试 Vue 项目 #### 使用断点和 `debugger` 关键字进行调试 为了更高效地开发 Vue 应用程序,在代码中可以添加 `debugger` 关键字来触发 JavaScript 调试器停止执行。另外,可以在 Visual Studio Code (VSCode) 编辑器中的特定行号旁边通过点击设置条件性的或无条件的小红点作为断点[^1]。 ```javascript // 在适当位置插入此关键字使调试器暂停于此处 debugger; ``` #### 修改 Vue 导入路径以便于源码级调试 对于希望深入理解框架内部工作原理的情况,可修改应用内的 Vue 包引入方式指向未压缩版本的库文件而非生产环境下的优化版。这允许开发者直接查看并逐步跟踪核心逻辑: ```diff - import Vue from 'vue'; + import Vue from '../../../../vue-2.6.14/dist/vue.js'; ``` 之后便能在这些外部资源里放置自己的断言或是日志语句辅助分析问题所在。 #### 设置 Webpack DevTool 属性 当采用 Vue CLI 构建工具链时,调整其配置选项有助于改善调试体验。具体来说就是编辑项目的根目录下名为 `vue.config.js` 的文件,并指定合适的 source map 类型给 webpack 使用: ```js module.exports = { configureWebpack: { devtool: 'source-map' } }; ``` 这样的改动能够确保生成详细的映射信息,从而让浏览器更好地关联编译后的代码与其原始形式之间的关系,进而提升整体效率[^2]。 #### 配置 launch.json 文件支持启动项 最后一步涉及创建或更 `.vscode/launch.json` 来定义具体的调试会话参数。下面是一个适用于大多数场景的例子: ```json { "version": "0.2.0", "configurations": [ { "type": "chrome", "request": "launch", "name": "Debug Vue App", "url": "http://localhost:8080", // 或者其他实际运行地址 "webRoot": "${workspaceFolder}/src" } ] } ``` 以上步骤完成后,应该能够在 VSCode 内顺利开启针对前端工程的有效调试流程了。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值