问题 无法在使用节点旋转的javascript文件中加载本地JSON文件。
问题很简单,但我没有在浏览器中提供javascript文件。我有一个具有逻辑的javascript文件,然后我将其旋转:
node main.js
我搜索了一些解决方案,他们建议使用JQuery或XMLHttpRequest,但它们似乎遇到了与我在浏览器中没有提供此事实相关的问题。
我正在使用树莓PI从红外温度传感器获取数据。我使用python来计算电压,转换为摄氏度,然后将其导出为JSON文件。然后,我计划将此文件加载到我的javascript文件中,然后配置角度火灾数据库并推送此数据。
我有一个前端应用程序,然后将其拉下来并向用户显示结束数据。
如果我使用JQuery:
$.getJSON("test.json", function(json) {
console.log(json); // this will show the info it in firebug console
});
$.getJSON is not a function even though I am requiring jQuery.
如果我使用纯JavaScript,我会看到
function loadJSON(callback) {
var xobj = new XMLHttpRequest();
xobj.overrideMimeType("application/json");
xobj.open('GET', 'my_data.json', true); // Replace 'my_data' with the path to your file
xobj.onreadystatechange = function () {
if (xobj.readyState == 4 && xobj.status == "200") {
// Required use of an anonymous callback as .open will NOT return a value but simply returns undefined in asynchronous mode
callback(xobj.responseText);
}
};
xobj.send(null);
}
xobj.overrideMimeType is not a function
如何将本地JSON文件加载到未加载到浏览器中的javascript文件中,而是将其与节点一起旋转,
node main.js
答案 0 :(得分:6)
Node.js可以通过require
加载JSON文件。请参阅此处的文档:https://nodejs.org/api/modules.html#modules_all_together
'./' or '/' or '../'
开头
您最想要的是const json = require('./test.json')
,假设test.json
与需要它的代码位于同一目录中。请记住,require
解析 JSON,因此示例中的json
是JavaScript对象。