web端代码编辑器和diff工具

最新更新时间:2021年05月18日13:51:49
《猛戳-查看我的博客地图-总有你意想不到的惊喜》

本文内容:

项目中引入
npm install monaco-editor --save-dev
npm install monaco-editor-webpack-plugin --save-dev
npm install react-monaco-editor -S
//package.json
{
	"dependencies": {
		"react-monaco-editor": "^0.40.0",
	}
}
react项目中的代码diff工具
  • JSON.stringify(JSON.parse(json)) 将单行json字符串以带有换行和缩进的格式形式输出
import { PureComponent } from 'react';
import * as monaco from 'monaco-editor/esm/vs/editor/editor.main.js';
class DiffViewer extends PureComponent {

	constructor(props) {
        super(props);
        this.state = {};
        this.editor = null;
    }
    
	componentDidMount(){
		let json1 = '';//json字符串
		let json2 = '';//json字符串
		if(!this.editor){
            this.editor = monaco.editor.createDiffEditor(this.refs.monacoDom, {
                enableSplitViewResizing: false,
                automaticLayout: true,
                readOnly: true,//false-可编辑
                fontSize: 18,//显示字号
                minimap: {enabled:false},
            })
        }
        const originalModel = monaco.editor.createModel(JSON.stringify(JSON.parse(json1),null,2), 'javascript');
        const modifiedModel = monaco.editor.createModel(JSON.stringify(JSON.parse(json2),null,2), 'javascript');
        this.editor.setModel({
            original: originalModel,
            modified: modifiedModel
        })
	}
	
	render(){
		return(<div ref="monacoDom"></div>)
	}
}
html直接显示json结构
  • JSON.stringify(data,null,2)
参考资料

感谢阅读,欢迎评论^-^

打赏我吧^-^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值