aka*_*all 4 node.js vue.js nuxt.js
我对节点有点陌生,但从大量搜索来看,“fs”似乎破坏了过去的很多东西。我遇到过几个尝试通过 npm 安装的软件包,但都遇到了Module not found: Error: Can't resolve 'fs'太多错误。
我已经运行了 npm install ,并且 fs 下载了一个占位符 package,但我真的停了下来,因为一个包(其中几个)仍然依赖于 fs 。
我发现的几乎每个 解决方案都会导致在 webpack 设置的节点部分中声明为空:fs
node: {
fs: 'empty'
},
Run Code Online (Sandbox Code Playgroud)
不幸的是,我使用的是 Vue.js 和 nuxt,并且没有 webpack 设置文件(据我所知)。我尝试将其添加到我的 nuxt_config.js 中,但没有成功。扩展(config, ctx) { config.node = { fs: "空" }; }
有没有办法在 nuxt_config 内部运行排除?另外,有没有办法在运行它的同时仍然保留我的设置以在保存时运行 eslint?
extend(config, ctx) {
// Run ESLint on save
if (ctx.isDev && ctx.isClient) {
config.module.rules.push({
enforce: 'pre',
test: /\.(js|vue)$/,
loader: 'eslint-loader',
exclude: /(node_modules)/
})
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢。
小智 5
以防万一有帮助。就我而言,这个错误突然出现并且无法说出原因。在尝试了一切(删除并重新安装 npm 包等)之后,我发现 VS CODE 自动引用了我刚刚保存的文件中的包,但我没有注意到。
就我而言,它添加了
import { query } from 'express'.
删除该行,一切又恢复正常了。
小智 5
用途可能会根据版本而变化。
就我而言,我必须使用“=”字符定义confing.node。
build: {
extend (config, { isDev, isClient }) {
config.node = {
fs: "empty"
}
})
}
Run Code Online (Sandbox Code Playgroud)