技术解析

用 codemirror 的时候如何动态加载某个语言的.js 文件?
0
1975-03-03 00:21:29
idczone
我主要是后端开发人员,现在想用 vue-codemirror ( https://github.com/surmon-china/vue-codemirror ) 来在线展示代码
//用的是传统的方式开发木有用 nodejs/webpack/import 这类的

因为 codemirror 里支持的语言很多,如果我不想预先加载某个语言的 js,如

而想在 javascript 里通过获取到的语言动态地加载相关的 js 文件进来,要用什么方法呢?

搜了一下动态加载 js 可以用 jQuery.getScript() ,不过不确定是不是比较好的姿势,所以还是来问问看.
require.js

详细点的呢看这个网页的源代码 [https://www.twle.cn/t/yufei/c/helloworld]( https://www.twle.cn/t/yufei/c/helloworld)
不那么详细的呢就是添加下面的设置即可,比如 C 语言
var var editor = CodeMirror.fromTextArea('xx');
var ext = "c";
var info = CodeMirror.findModeByExtension(ext);
var mode = "";
var spec = "";
if (info) {
mode = info.mode;
spec = info.mime;
}
if (mode) {
editor.setOption("mode", spec);
CodeMirror.autoLoadMode(editor, mode);
}

感谢例子!之后试试

我之前用 vue 结合处理怎么也有问题,用了 vue-codemirror 也各种问题
刚试了 ace,结果一下就正常显示了,所以准备不用 codemirror 用 ace 了,feature 级别看起来也差不多

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服