【问题标题】:Another way to read a JSON File in NodeJS [duplicate]在 NodeJS 中读取 JSON 文件的另一种方法 [重复]
【发布时间】:2019-02-19 15:57:46
【问题描述】:

我根据需要读取本地json并导出读取功能

var saborServicioJSON = require("../app/JSONFiles/customerSatisfaction.json");
module.exports = {
loadTableSS: function (payload) {
    var sucursales = JSON.parse(payload.payload.Sucursales);
    var selectedweek = payload.payload.SelectedWeek;
    var selectedyear = payload.payload.SelectedYear;
    var JSONobj;
    var arrayTable = [];
    JSONobj = saborServicioJSON;
    for (let i = 0; i < sucursales.length; i++) {
        const sucursal = sucursales[i].toString();
        $(JSONobj).each(function (index, item) {
            var datadate = new Date(item.date);
            var datayear = datadate.getFullYear();
            if (item.storeID == sucursal && item.week == selectedweek && datayear == selectedyear) {
                arrayTable.push(item);
            }
        });
    }
    return arrayTable;

 }
}

我在我的路由文件中导出读取功能以将其用作 Web 服务

const reportsController = require('../private_modules/ReportsController')

server.route({
method: 'POST',
path: '/ssLoadTable',
handler: function (request, reply) {
  var tableData = reportsController.loadTableSS(request);
  reply(tableData);
}

});

我需要另一种方法来读取我尝试使用的 JSON 文件

    fs.readFile('./app/JSONFiles/customerSatisfaction.json', 'utf8', function (err, data) {});

但我无法在 fs.readFile 方法中返回我的数据数组

【问题讨论】:

标签: javascript node.js json routes hapijs


【解决方案1】:

您将不得不解析数据并使用同步函数或正确处理异步。

注意:最好使用路径模块,也不要使用相对路径。

let data = JSON.parse(fs.readFileSync(path.join(__dirname, 'app', 'JSONFiles','customerSatisfaction.json'), 'utf8'));

【讨论】:

  • 完美,有效!我也改变了路径
猜你喜欢
  • 2019-08-26
  • 1970-01-01
  • 1970-01-01
  • 2018-04-15
  • 2021-01-09
  • 2019-12-30
  • 1970-01-01
  • 1970-01-01
  • 2017-09-05
相关资源
最近更新 更多