未捕获错误:找不到模块“fs”

时间:2018-06-06 09:38:21

标签: angularjs node.js fs

我的Webpack版本是v1.15.0。

我在我的JS文件中只是require('fs'),但我收到错误:

  

未捕获错误:找不到模块“fs”;   当我添加节点{fs:'empty'},

然后又出现了另一个错误:

  

fs.readdirSync不是函数

如果我添加:

externals:{
  "fs": "commonjs fs"
},

我收到另一个错误:

  

未捕获的ReferenceError:未定义require

为什么呢?我该如何修理它?

编辑:当我将所有文件的名字放在文件.txt上时,我得到了带有$ http.get的文件.txt,它运行正常

2 个答案:

答案 0 :(得分:1)

fs应该只是服务器端(nodeJS),你总是让节点完成访问服务器上文件的工作,而不是客户端。

你会在NodeJS(服务器端)上做这样的事情(这个词不是正确的,但是它会让你开始)

fs = require('fs')


router.get('/getdocs', function(req, res, next) {
  // do your filesystem operation here, then return what you want
})    

然后在客户端(angularJS),您将获取NodeJS返回的内容

fetch('mydomain/api/getdocs').then(rtrn => {
    console.log(rtrn)
})

答案 1 :(得分:0)

始终建议将内置或不会改变的功能与常量

一起使用
const fs = require('fs');
当你尝试修改它时,让它不变会引发错误。