Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何读取JSON文件并使用基于JSON的jQuery生成动态页面_Javascript_Html_Node.js_Json_Electron - Fatal编程技术网

Javascript 如何读取JSON文件并使用基于JSON的jQuery生成动态页面

Javascript 如何读取JSON文件并使用基于JSON的jQuery生成动态页面,javascript,html,node.js,json,electron,Javascript,Html,Node.js,Json,Electron,我不熟悉这个节点和json,从json获取数据时遇到了一些问题。 这是我的密码 'use strict'; const fs = require('fs'); let questsRawData = fs.readFileSync('quests-db.json'); let quests = JSON.parse(questsRawData); for (var i = 0; i < quests.length; i++) { console.log(quests[i].tit

我不熟悉这个节点和json,从json获取数据时遇到了一些问题。 这是我的密码

'use strict';

const fs = require('fs');

let questsRawData = fs.readFileSync('quests-db.json');
let quests = JSON.parse(questsRawData);

for (var i = 0; i < quests.length; i++) {
  console.log(quests[i].title);
}
“严格使用”;
常数fs=要求('fs');
让questsRawData=fs.readFileSync('quests-db.json');
让quests=JSON.parse(questsRawData);
对于(变量i=0;i
当我在节点中运行时,我在终端中得到了预期的结果,但在浏览器中,我在控制台中得到了这个消息

Uncaught SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at showNeg.js:241
    at XMLHttpRequest.onDefaultReadyStateChangeHandler (showNeg.js:311)
uncaughtsyntaxerror:JSON输入意外结束
在JSON.parse()处
在showNeg.js:241
位于XMLHttpRequest.onDefaultReadyStateChangeHandler(showNeg.js:311)
另外,如果我尝试像这样使用jQuery将结果附加到DOM中

for (var i = 0; i < quests.length; i++) {
  $(body).append('<p>' + quests[i].title + '</p>);
}
for(变量i=0;i);
}
我在终端收到这个错误

C:\Users\Denis\Desktop\Test\main.js:9
  $(body).append('<p>' + quests[i].title + '</p>');
  ^

ReferenceError: $ is not defined
C:\Users\Denis\Desktop\Test\main.js:9
$(正文).append(“”+任务[i].标题+”

); ^ ReferenceError:$未定义
我正在尝试用electron制作桌面应用程序,我想用JSON作为本地数据库


谢谢

请将jquery作为依赖项安装

npm安装--保存jquery

然后在index.html中添加此脚本

  <head>
    <script>
      window.$ = window.jQuery = require("jquery");
    </script>
    ....
要读取json文件,这就足够了

let quests = require('./quests-db.json');
还有一件事。Json对象不能是可编辑的。为了你的案子。你需要像这样使用

for (const key in quests) {
  console.log(quests[key]);
}
...
$(body).append('<p>' + quests[key].title + '</p>);
for(任务中的常量键){
console.log(任务[key]);
}
...
$(正文).append(“”+任务[key].title+”

);
$未定义
是因为您的项目中未包含jquery。对于另一个错误,请查看这是否是有效的json。使用一些在线json验证器检查它。在html页面
main.js
中,我在main.js之前包含jquery,它通常不被html页面链接(也称
呈现程序
过程)
for (const key in quests) {
  console.log(quests[key]);
}
...
$(body).append('<p>' + quests[key].title + '</p>);