在多个模块中运行时,无法识别节点的fs.ReadStream

时间:2019-01-04 05:58:18

标签: node.js hash cryptography

我正在使用react和一个名为react-dropzone的模块在客户端上查找文件的哈希。在尝试过的几种不同方法中,我不断遇到

的错误

TypeError: fs.ReadStream is not a function

各种模块都试图调用此功能。

我当然包括

const fs = require("fs")

这里有一些代码会产生此错误。 handleOnDrop是处理通过react-dropzone选择的文件的功能。

  handleOnDrop = file => {
    // Updating shasum with file content
    var filename = file,
      s = fs.ReadStream(filename);
    s.on("data", function(data) {
      shasum.update(data);
    });

    // making digest
    s.on("end", function() {
      var hash = shasum.digest("hex");
      console.log(hash + "  " + filename);
    });
  };

产生相同错误的另一个模块:

const hasha = require('hasha');

  handleOnDrop = file =>{
    hasha.fromFile(file, {algorithm: 'md5'}).then(hash => {
        console.log(hash);
    });
  }

我不明白为什么多个不同的模块会产生相同的错误。 fs应该内置到节点中。任何想法都将不胜感激!

0 个答案:

没有答案