Javascript 电子不';t将json文件添加到应用程序
这是我的第一个electron/node应用程序,我尝试使用json文件作为数据存储。因此,我在app文件夹下Javascript 电子不';t将json文件添加到应用程序,javascript,json,electron,Javascript,Json,Electron,这是我的第一个electron/node应用程序,我尝试使用json文件作为数据存储。因此,我在app文件夹下index.js | css | html 我安装了一个npm软件包jsonfile,可以正常加载 当我尝试加载我的json文件时,EOF被触发,声称没有json文件,并且我可以使用DevTools源选项卡看到我的json文件不在那里(未加载) 我试着从electron应用程序菜单强制重新加载 这是我的文件代码,正在读取我的json const jsonfile = require(
index.js | css | html
我安装了一个npm软件包jsonfile
,可以正常加载
当我尝试加载我的json文件时,EOF被触发,声称没有json文件,并且我可以使用DevTools源选项卡看到我的json文件不在那里(未加载)
我试着从electron应用程序菜单强制重新加载
这是我的文件代码,正在读取我的json
const jsonfile = require('jsonfile')
const file = '/index.json';
var json;
jsonfile.readFile(file)
.then(obj => json = obj)
.catch(error => console.error(error))
------------编辑
将路径名更正为
index.json
或/index.json
会引起同样的问题您可以使用本机fs
(文件系统)模块
let path=“index.json”
常数fs=要求('fs');
const json=json.parse(fs.readFileSync(path));
感谢您的支持
对我来说,问题更多的是文件系统处理,而不是电子
我所做的只是对我的项目文件夹进行chmod,以确保我能够读写index.json数据存储
sudo chmod-R 777/opt/workspace/electron/myelectronprpject文件夹
然后为了更好的路径分辨率,我使用了electron archtype中使用的基本思想,它更安全
const path = require('path')
const file = path.join(__dirname,'index.json');
var json;
var html = "";// The returned object.
$(document).ready(function () {
jsonfile.readFile(file)
.then(obj => {
json = JSON.parse(JSON.stringify(obj));
console.log(JSON.stringify(json))
parseIssues(json.children);
document.getElementById('a').innerHTML = html;
})
.catch(error => console.error(error))
});
您可以看到,我在这个代码段中使用了JQuery,但它在没有JQuery的情况下也可以工作
在resume中,在文件夹上授予权限的更好路径解析策略。
谢谢您尝试在硬盘的根装入点上找到该文件。使用
/index.json
而不是/index.json
或只使用index.json
您可以只使用const json=require(“./index.json”)
无需使用外部库或fs
它不是必需的require()
也加载json文件。他到文件的路径不正确。他说路径不正确。此外,他不需要一个文件,而是一个名为jsonfile的包,我不知道这个包是如何工作的,所以我给了他一个替代方案。我不好,我没有注意到他使用了一个库。