如何解决nuxt.js中的“找不到模块:错误:无法解决'fs'”?

时间:2019-01-02 06:51:01

标签: node.js vue.js nuxt.js

我对node有点陌生,但是经过大量搜索,过去看来'fs'打破了很多事情。我遇到了一些尝试通过npm安装的软件包,它们遇到了太多的{​​{1}}错误。

我已经运行了npm install,而fs下载了placeholder package,但是我真的停了下来,因为一个包(其中有几个)仍然依赖于fs。

every solution中,我find在Webpack设置的节点部分中将Module not found: Error: Can't resolve 'fs'声明为空:

fs

不幸的是,我正在使用Vue.js和nuxt,并且没有Webpack设置文件(据我所知)。我尝试将其添加到我的nuxt_config.js中,但没有成功。     扩展(config,ctx){      config.node = {        fs:“空”      };     }

是否可以在nuxt_config内部运行排除?另外,是否有一种方法可以在运行时仍保留我的设置以便在保存时运行eslint?

node: {
  fs: 'empty'
},

谢谢。

3 个答案:

答案 0 :(得分:1)

建议是正确的,根据Webpack的说法,documentation应该将fs模块设置为'empty'

您是否尝试过将其插入到构建块内顶级配置的nuxt配置中?

build: {
  extend (config, { isDev, isClient }) {

     config.node: {
        fs: 'empty'
      }

     // ....
  }
}

答案 1 :(得分:1)

用法可能会因版本而异。

在我的情况下,我必须使用“ =”字符定义confing.node。

    build: {
        extend (config, { isDev, isClient }) { 
            config.node = {
                fs: "empty"
            }
        })
    }

答案 2 :(得分:0)

以防万一。以我为例,这个错误突然出现了,无法说明原因。尝试了所有操作(删除并重新安装npm软件包等)后,我发现VS CODE自动在我刚刚保存的文件中引用了一个软件包,但我没有注意到。

就我而言,它添加了 import { query } from 'express'.

删除该行,然后一切又恢复正常。