Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更改事件上的CodeMirror合并构造函数_Javascript_Jquery_Codemirror - Fatal编程技术网

Javascript 更改事件上的CodeMirror合并构造函数

Javascript 更改事件上的CodeMirror合并构造函数,javascript,jquery,codemirror,Javascript,Jquery,Codemirror,我使用CodeMirror和merge插件将一些编辑过的代码与原始文档进行比较。在普通视图(不是合并视图)中,我可以向CodeMirror构造函数添加一个侦听器来侦听更改,并向用户提供可视反馈,以显示更改尚未保存 像这样: //codemirror constructor var cmConstructor = CodeMirror(target, setOptions()); cmConstructor.on('change', function() {codeChange(variables

我使用CodeMirror和merge插件将一些编辑过的代码与原始文档进行比较。在普通视图(不是合并视图)中,我可以向CodeMirror构造函数添加一个侦听器来侦听更改,并向用户提供可视反馈,以显示更改尚未保存

像这样:

//codemirror constructor
var cmConstructor = CodeMirror(target, setOptions());
cmConstructor.on('change', function() {codeChange(variables)});
现在,当我在合并构造函数上调用它时,如下所示:

//codemirror merge constructor
var cmConstructor = CodeMirror.MergeView(target, setOptions());
cmConstructor.on('change', function() {codeChange(variables)});
我得到以下错误: 未捕获的TypeError:
Object#没有方法“on”


知道如何在合并视图中侦听更改吗?

合并视图
封装了两个(或三个)编辑器,您可以使用
.editor()
.leftOriginal()
.rightOriginal()
方法访问编辑器。在这种情况下,由于原件不会更改,因此您需要

mergeView.editor().on("change", function(cm, change) { ... });

MergeView
封装了两个(或三个)编辑器,您可以使用
.editor()
.leftOriginal()
.righoriginal()
方法访问编辑器。在这种情况下,由于原件不会更改,因此您需要

mergeView.editor().on("change", function(cm, change) { ... });