为图标备忘单生成一个json

时间:2019-07-02 16:32:17

标签: node.js json reactjs

我正在尝试生成一个json文件,其中包含某个目录中所有文件的文件名。我需要用它来创建图标的备忘单。

当前,我正在尝试通过终端在本地运行脚本,以生成json。该json是显示图标的react组件的输入。该组件有效,创建json脚本无效。

用于生成json的代码

const fs = require('fs');
const path = require('path');

/**
 * Create JSON file
 */
const CreateJson = () => {
  const files = [];
  const dir = '../icons';

  fs.readdirSync(dir).forEach(filename => {
    const name = path.parse(filename);
    const filepath = path.resolve(dir, filename);
    const stat = fs.statSync(filepath);
    const isFile = stat.isFile();

    if (isFile) files.push({ name });
  });

  const data = JSON.stringify(files, null, 2);
  fs.writeFileSync('../Icons.json', data);
};

module.exports = CreateJson;

我在终端使用 “ create:json”:“ NODE_ENV =构建节点./scripts/CreateJson.js”

我希望创建/覆盖json文件。但是终端返回:

$ NODE_ENV =构建节点./scripts/CreateJson.js in完成0.16秒。

有指针吗?

1 个答案:

答案 0 :(得分:0)

您正在创建函数CreateJson并将其导出,但实际上您从未调用过它。

您可以摆脱module.exports并将其替换为CreateJson()

当您使用node执行文件时,它将看到函数声明和对其的调用,而对于您当前的代码,则没有调用。