【发布时间】:2015-08-11 09:05:09
【问题描述】:
我有一个使用 Require.js 的项目,我使用 CodeMirror 在浏览器中查看/编辑 JavaScript 文件(这个和所有 CodeMirror 插件都按预期工作)。
我现在需要显示文件中的所有差异,所以我一直在尝试实现 merge.js 插件,但在使用 diff_match_patch.js 库时遇到了问题,这也是必需的。
我需要在本地提供所有资产,因此我将 diff_match_patch.js 文件放在与 merge.js 相同的目录中,因为我认为 merge.js 期待它在那里:
// merge.js
else if (typeof define == "function" && define.amd) // AMD
define(["../../lib/codemirror", "diff_match_patch"], mod);
但是看着我的检查员,我看到了
"NetworkError: 404 Not Found - http://localhost:8080/js/diff_match_patch.js"
所以我将 diff_match_patch.js 移至 /js/ 目录。 (这并不理想,但如果它可以工作的话还可以)
没有 404,但现在我看到了:
// merge.js
// (line 550, col 12)
"TypeError: diff_match_patch is not a constructor
var dmp = new diff_match_patch();"
我不确定我做错了什么,但如果有人能对此有所了解,那就太好了。我还从demo 复制了标记 而且我看到了相同的“diff_match_patch 不是构造函数”错误。从 CDN 引用 diff_match_patch.js 也会产生同样的错误。
有什么想法吗?
谢谢!
【问题讨论】:
标签: javascript merge requirejs codemirror