我对requirejs相当陌生。我已经设法将 requirejs 与 AMD 模块(例如 ace 编辑器等)一起使用。我在stackoverflow上看到理论上可以用requirejs加载普通js。
经过几次尝试、研究和一些挫折后,我无法使用 requirejs 加载 pagedown 编辑器而没有错误。
这是我的代码:
requirejs.config({
paths: {
jquery: "jquery-2.0.2.min",
bootstrap: "bootstrap.min",
ace: "ace/lib/ace",
prettify: "pagedown/prettify",
pdconv: "pagedown/Markdown.Converter",
pdsanity: "pagedown/Markdown.Sanitizer",
pdeditor: "pagedown/Markdown.Editor",
pdextra: "pagedown/Markdown.Extra",
},
shim: {
"bootstrap": {
deps: ["jquery"]
}
}
});
require(['jquery', 'bootstrap', 'ace/ace', 'prettify', 'pdconv', 'pdeditor', 'pdsanity', 'pdextra'],
function($, Bootstrap, ace, prettyPrint) {
var input = $('#wmd-input').text();
var editor = ace.edit("wmd-input");
var conv = Markdown.getSanitizingConverter();
Markdown.Extra.init(conv, {
extensions: "all",
highlighter: "prettify"
});
var md = new Markdown.Editor(conv);
md.hooks.chain("onPreviewRefresh", prettyPrint); // google code prettify
md.run(editor);
editor.focus();
});
这是我不断收到的错误:
Uncaught TypeError: undefined is not a function Markdown.Editor.js:185
每次击键后我都会收到该错误。这些文件确实是通过 requirejs 加载的,但不起作用。是否有一种简单的方法可以使 pagedown 编辑器与 requirejs 一起使用,或者这是不可能的。
任何帮助/建议/建议将不胜感激。
谢谢