Можно ли использовать файловую систему в SDK-версии NWjs, но не в обычной?
По какой-то причине мое приложение NWjs ведет себя по-разному в "нормальной" (не SDK) версии NWjs, для одной из которых я не могу использовать файловую систему (файлы не сохраняются). Вот мой код (машинопись):
/// <reference path="./node.d.ts" />
import fs = require("fs");
function LoadFile(){
(document.getElementById("txt") as HTMLInputElement).value = fs.readFileSync((document.getElementById("filename") as HTMLInputElement).value+".txt", "utf8");
}
function SetLineEnds(content:string, windows:boolean){
let result:string = content.replace(/\r\n/gm, "\n");
if (windows) {
result = result.replace(/\n/gm, "\r\n");
}
return result;
}
function SaveFile(){
let file = (document.getElementById("txt") as HTMLInputElement).value;
file = SetLineEnds(file,true);
fs.writeFileSync((document.getElementById("filename") as HTMLInputElement).value+".txt",file);
}
Мой index.html:
<html>
<head>
<title>Textedit</title>
<script type="text/javascript" src="code.js"></script>
</head>
<body>
<textarea id="txt" rows="25" cols="80" wrap="soft"></textarea><br />
<input type="text" id="filename" value="joke" /><input type="button" id="save" value="Save" onclick="SaveFile()" /><input type="button" name="load" value="Load" onclick="LoadFile()" />
</body>
</html>
И мой пакет.json:
{
"name" : "textedit",
"main" : "index.html",
"nodejs" : true,
"window" : {
"title" : "Textedit",
"width" : 800,
"height": 600
}
}
Как вы можете видеть, я пытался включить Node, установив для nodejs значение true, потому что, возможно, он не был включен по умолчанию в не-SDK-версии NW по соображениям безопасности или что-то в этом роде, но нет, он все равно не работал, Все, что я пытаюсь сделать, - это написать простой текстовый редактор, чтобы начать работу. Он работает в SDK-версии узла, но не после копирования в не SDK-версию.