Allow loading json using require()
This commit is contained in:
parent
4aa28c0af3
commit
7b309dba16
1 changed files with 9 additions and 12 deletions
|
@ -165,18 +165,12 @@ When resolving module names to file paths, ScriptCraft uses the following rules.
|
|||
if ( file.exists() ) {
|
||||
return fileExists(file);
|
||||
} else {
|
||||
// try appending a .js to the end
|
||||
pathWithJSExt = file.canonicalPath + '.js';
|
||||
file = new File( parentDir, pathWithJSExt );
|
||||
if (file.exists()) {
|
||||
return file;
|
||||
} else {
|
||||
file = new File(pathWithJSExt);
|
||||
if ( file.exists() ) {
|
||||
return file;
|
||||
}
|
||||
}
|
||||
|
||||
if ((file = new File(parentDir, moduleName)).exists()) {
|
||||
return fileExists(file);
|
||||
} else if ((file = new File(parentDir, moduleName + ".js")).exists()) { // try .js extension
|
||||
return file;
|
||||
} else if ((file = new File(parentDir, moduleName + ".json")).exists()) { // try .json extension
|
||||
return file;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
|
@ -250,6 +244,9 @@ When resolving module names to file paths, ScriptCraft uses the following rules.
|
|||
}
|
||||
buffered.close(); // close the stream so there's no file locks
|
||||
|
||||
if(canonizedFilename.substring(canonizedFilename.length - 5) === ".json") // patch code when it is json
|
||||
code = "module.exports = (" + code + ");";
|
||||
|
||||
moduleInfo = {
|
||||
loaded: false,
|
||||
id: canonizedFilename,
|
||||
|
|
Reference in a new issue