找不到模块:错误:无法解析'path'

Joe*_*rdi 6 node.js typescript webpack angular-cli

我有一个Angular CLI项目,我刚刚升级到Angular 6.现在,当我尝试构建我的应用程序时,出现以下错误:

ERROR in ./node_modules/postcss/lib/input.js Module not found: Error: Can't resolve 'path' in '/Users/jattardi/code/myproject/node_modules/postcss/lib' ERROR in ./node_modules/postcss/lib/map-generator.js Module not found: Error: Can't resolve 'path' in '/Users/jattardi/code/myproject/node_modules/postcss/lib' ERROR in ./node_modules/postcss/lib/previous-map.js Module not found: Error: Can't resolve 'path' in '/Users/jattardi/code/myproject/node_modules/postcss/lib' ERROR in ./node_modules/htmlparser2/lib/WritableStream.js Module not found: Error: Can't resolve 'stream' in '/Users/jattardi/code/myproject/node_modules/htmlparser2/lib'

我糊涂了.首先,我甚至没有使用postcsshtmlparser2直接在我的项目中.所以他们必须是其他东西的依赖.

但是不是path并且stream内置Node模块?怎么可能无法解决它们?

小智 13

npm install path
npm install stream
Run Code Online (Sandbox Code Playgroud)

做了伎俩


Pre*_*vic 5

如果您使用的是 webpack5:

  1. 安装:yarn add path-browserify or npm install path-browserify

  2. 将其添加到全局 webpack 设置中:

    resolve: {
         fallback: { 
             path: require.resolve("path-browserify") }
     },
    
    Run Code Online (Sandbox Code Playgroud)