fs.createwritestream不是函数

时间:2019-03-08 12:56:13

标签: node.js reactjs typeerror createwritestream

我正在尝试开发一个反应应用程序,以帮助我将文件下载到我的亚马逊云。 为此,我使用了此模块

  

带有进度条的下载文件

这是我的代码:

      var dl            = require('download-file-with-progressbar');
                //-----------Download File-------------------
                option = {
                    filename: 'fileName',
                    dir: os.tmpdir(),
                    onDone: (info)=>{
                    console.log('done', info);
                    },
                    onError: (err) => {
                    console.log('error', err);
                    },
                    onProgress: (curr, total) => {
                    console.log('progress', (curr / total * 100).toFixed(2) + '%');
                    },
                }

                dd = dl('https://nodejs.org/dist/v6.10.2/node-v6.10.2-linux-x64.tar.gz', this.option);
                //-------------------------------------------

在nodejs项目上运行正常。但是,当我在一个React项目(使用'create-react-app'创建的)中使用它时,产生了以下错误。

  

TypeError:fs.​​createWriteStream不是函数

我对该项目的想法是创建一个React应用程序,以帮助将文件下载到我的服务器或云空间。如何解决该错误。

1 个答案:

答案 0 :(得分:0)

createWriteStream是Nodejs API的功能部分,因此当您将其作为nodejs项目运行时,它可以正常工作。

但是当您运行React应用时,是您的浏览器执行代码,而不是nodejs。而且浏览器不知道该API。

如果要从React应用程序下载文件,则必须通过HTTP请求来执行。例如,您可以使用fetch API