index.js 1.0 KB

123456789101112131415161718192021222324252627282930313233
  1. new Vue({
  2. el: '#pageContainer',
  3. data: {
  4. errorMessage: '',
  5. errorHighlight: false
  6. },
  7. mounted: function () {
  8. // 错误处理器
  9. let errorHandler = (which, ok) => {
  10. if (ok) {
  11. this.errorMessage = '两侧JSON比对完成!';
  12. this.errorHighlight = false;
  13. } else {
  14. this.errorMessage = {'left': '左', 'right': '右', 'left-right': '两'}[which] + '侧JSON不合法!';
  15. this.errorHighlight = true;
  16. }
  17. };
  18. // diff处理器
  19. let diffHandler = (diffs) => {
  20. if (!this.errorHighlight) {
  21. if (diffs.length) {
  22. this.errorMessage += '共有 ' + diffs.length + ' 处不一致!';
  23. } else {
  24. this.errorMessage += '左右两侧JSON内容一致!';
  25. }
  26. }
  27. };
  28. // 代码比对
  29. JsonDiff.init(this.$refs.srcLeft, this.$refs.srcRight, errorHandler, diffHandler);
  30. }
  31. });