javascript - CodeMirror 在更改事件上合并构造函数

标签 javascript jquery codemirror

我正在使用 CodeMirror 和合并插件来将一些编辑后的代码与原始文档进行比较。在普通 View (不是合并 View )中,我可以向 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)});

我收到以下错误: 未捕获的类型错误:Object #<Object> has no method 'on'

知道如何监听 mergeView 中的更改吗?

最佳答案

MergeView封装了两个(或三个)编辑器,您可以通过.editor().leftOriginal()来获取编辑器> 和 .rightOriginal() 方法。在这种情况下,由于原始内容没有改变,所以您想要

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

关于javascript - CodeMirror 在更改事件上合并构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19420971/

相关文章:

javascript - 如何使用带有 Sequelize 的 iLike 运算符进行不区分大小写的查询

javascript - setTimeout刷新和毫秒参数不起作用

单击 slider 按钮上的 Javascript 视频弹出窗口

javascript - AngularJS 中的 find 与 querySelector

jquery - map 区域上的鼠标悬停在 webkit(safari、chrome)上不会触发,css 错误?

angular - ngx-Codemirror 游标无法正常工作-Angular 8

javascript - CodeMirror foldCode 方法不起作用

javascript - 如何在 JavaScript 中从字符串中删除所有非字母并将空格转换为破折号?

php - 使用 jQuery 选择 pdf url

javascript - 在不访问对象的情况下以编程方式编辑 CodeMirror 内容