如何从 NodeJs 使用 FS? "I'm `FS` modules"

How to use FS from NodeJs ? "I'm `FS` modules"

在提问之前,我在同一论坛上阅读了很多有关此问题的信息,但找不到解决方案。

这是我的js文件:

const fs = require( 'fs' );

fs.readFile( './test.html', (err, data) => {
   if (err) throw err;
   console.log(data);
})

这是结果: "I'm fs modules"

我了解到这是因为这不是来自 NodeJs 的原生“fs”包,我可能有一个“troll”包。

好的,我做到了

npm uninstall fs
npm uninstall -g fs

问题依旧。 所以我从我的机器上完全卸载了 NodeJs,重新启动,重新安装,再次重新启动,仍然是同样的问题。

例如,我对“http”包没有问题。

我的版本 npm - 6.14.11, node - 14.15.4, webpack - 4.46.0

我坚持这个是因为我感觉自己被人骗了,或者只是遗漏了一些绝对明显的东西。

你能帮我解决这个问题吗?

根据 webpack 错误,您似乎正试图在浏览器中使用 fs。 浏览器 JavaScript 无法访问文件系统,因此 fs 包将不会加载。 而不是使用文件 api 尝试向服务器发送 http 请求并响应相应的数据。

  1. npm 初始化
  2. mkdir
  3. 安装 axios
  4. 触摸index.js
  5. 复制过去的代码
  6. 运行节点index.js
const fs = require('fs');
const axios = require('axios').default;
axios.get('https://drive.google.com/file/d/1I7ec--mRp-e93mM7Hm50PAQXtFP-cviR/view?usp=sharing').then((res) => {
    fs.writeFile('abc.txt', res.data, (err, data) => {
        if (err) {
            console.error(err);
        } else {
            console.log("File created successfully");
            fs.open('abc.txt', 'r+', (err, fd) => {
                if (err) {
                    console.error(err);
                } else {
                    console.log('file opened');
                    fs.readFile('abc.txt', 'utf-8', (err, data) => {
                        if (err) {
                            console.error(err);
                        } else {
                            console.log("Read");
                            fs.close(fd, (err, data) => {
                                if (err) {
                                    console.error(err);
                                } else {
                                    console.log("Closed");
                                }
                            })
                        }
                    })
                }
            })
        }
    })
})

//Output

/* 
File created successfully
file opened
Read
Closed
*/


  1. 列表项