我使用的外部库使用了我不知道的requirejs
它的工作原理,但FileError在其他浏览器的全局范围内
或者在FF8中但在FF 14/15中说FileError not defined.
define(function (require, exports, module) {
"use strict";
var Async = require("utils/Async");
var NativeFileSystem = {
/**
* LOT OF CODE HERE
* ...
* ...
* ...
*/
/** class: FileError
*
* Implementation of HTML file API error code return class. Note that we don't
* actually define the error codes here--we rely on the browser's built-in FileError
* class's constants. In other words, external clients of this API should always
* use FileError.<constant-name>, not NativeFileSystem.FileError.<constant-name>.
*
* @constructor
* @param {number} code The error code to return with this FileError. Must be
* one of the codes defined in the FileError class.
*/
NativeFileSystem.FileError = function (code) {
this.code = code || 0;
};
/**
*THIS FIX THE PROBLEM BUT IT A HACK
*window.FileError = NativeFileSystem.FileError;
*/
// Define public API
exports.NativeFileSystem = NativeFileSystem;
});
当然如果我在之后添加window.FileError = NativeFileSystem.FileError;
功能定义其工作正常。但我不想破解图书馆
The full source of the file is here
答案 0 :(得分:1)
Brackets仅针对错误代码常量依赖FileError类。
FileAPI仍然是草案规范http://www.w3.org/TR/FileAPI/,看起来他们在我们最初编写NativeFileSystem之后的时间里已经将FileError更改为DOMError。我们可以删除此依赖项并定义我们自己的等效FileError常量以删除依赖项。我们试图在FileAPI之后对API进行建模,但它一直是一个移动目标。