./node_modules/axios/lib/adapters/http.js 中的错误
ERROR in ./node_modules/axios/lib/adapters/http.js
在我的 React 项目中安装和导入 axios 后出现此错误,有帮助吗?:
编译有问题:
./node_modules/axios/lib/adapters/http.js 中的错误 11:11-26
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\axios\lib\adapters' 中解析 'http'
您指的是 './http' 吗?
应在当前目录中解析的请求需要以“./”开头。
以名称开头的请求被视为模块请求并在模块目录中解析 (node_modules, H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules)。
如果更改源代码不是一个选项,还有一个名为 'preferRelative' 的解析选项,它也尝试在当前目录中解析这些类型的请求。
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "http": require.resolve("stream-http") }'
- 安装 'stream-http'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback: { "http": 假}
./node_modules/axios/lib/adapters/http.js 中的错误 13:12-28
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\axios\lib\adapters'
中解析 'https'
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "https": require.resolve("https-browserify") }'
- 安装 'https-browserify'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback:{“https”:假}
./node_modules/axios/lib/adapters/http.js 中的错误 19:10-24
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\axios\lib\adapters'
中解析 'url'
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "url": require.resolve("url/") }'
- 安装 'url'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback: { "url": 假}
./node_modules/axios/lib/adapters/http.js 中的错误 21:11-26
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\axios\lib\adapters'
中解析 'zlib'
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }'
- 安装 'browserify-zlib'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback:{“zlib”:假}
./node_modules/follow-redirects/index.js 中的错误 1:10-24
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects'
中解析 'url'
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "url": require.resolve("url/") }'
- 安装 'url'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback: { "url": 假}
./node_modules/follow-redirects/index.js 中的错误 5:11-26
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects' 中解析 'http'
您指的是 './http' 吗?
应在当前目录中解析的请求需要以“./”开头。
以名称开头的请求被视为模块请求并在模块目录中解析 (node_modules, H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules)。
如果更改源代码不是一个选项,还有一个名为 'preferRelative' 的解析选项,它也尝试在当前目录中解析这些类型的请求。
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "http": require.resolve("stream-http") }'
- 安装 'stream-http'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback: { "http": 假}
./node_modules/follow-redirects/index.js 中的错误 7:12-28
找不到模块:错误:无法解析 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects' 中的 'https'
您指的是 './https' 吗?
应在当前目录中解析的请求需要以“./”开头。
以名称开头的请求被视为模块请求并在模块目录中解析 (node_modules, H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules)。
如果更改源代码不是一个选项,还有一个名为 'preferRelative' 的解析选项,它也尝试在当前目录中解析这些类型的请求。
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "https": require.resolve("https-browserify") }'
- 安装 'https-browserify'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback:{“https”:假}
./node_modules/follow-redirects/index.js 中的错误 9:15-41
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects'
中解析 'stream'
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "stream": require.resolve("stream-browserify") }'
- 安装 'stream-browserify'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback:{“流”:假}
./node_modules/follow-redirects/index.js 中的错误 11:13-30
未找到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects'
中解析 'assert'
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。
这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要:
- 添加后备 'resolve.fallback: { "assert": require.resolve("assert/") }'
- 安装 'assert'
如果你不想包含一个 polyfill,你可以像这样使用一个空模块:
resolve.fallback:{“断言”:假}
我通过
解决了我的错误
npm audit fix --force
Webpack 5 不再默认包含节点 shim,因此我们必须 opt-in 我们想要的所有 shim。我们需要向我们的项目添加一些依赖项来完成此操作:
yarn add process browserify-zlib stream-browserify util buffer assert
安装后,修改您的 webpack.config
文件,如下所示
const webpack = require("webpack");
module.exports = {
/* ... */
resolve: {
fallback: {
http : require.resolve("stream-http"),
https : require.resolve("https-browserify"),
url : require.resolve("url"),
process: require.resolve("process/browser"),
zlib: require.resolve("browserify-zlib"),
stream: require.resolve("stream-browserify"),
util: require.resolve("util"),
buffer: require.resolve("buffer"),
asset: require.resolve("assert"),
}
},
plugins: [
new webpack.ProvidePlugin({
Buffer: ["buffer", "Buffer"],
process: "process/browser",
}),
]
/* ... */
}
我通过 运行 这个命令
解决了这个错误
npm i url
版本 0.27 [最新] 不适用于我,所以我将其删除并安装了以前的版本,如下所示:
“axios”:“^0.21.1”
它很适合我
在我的 React 项目中安装和导入 axios 后出现此错误,有帮助吗?:
编译有问题:
./node_modules/axios/lib/adapters/http.js 中的错误 11:11-26
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\axios\lib\adapters' 中解析 'http' 您指的是 './http' 吗? 应在当前目录中解析的请求需要以“./”开头。 以名称开头的请求被视为模块请求并在模块目录中解析 (node_modules, H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules)。 如果更改源代码不是一个选项,还有一个名为 'preferRelative' 的解析选项,它也尝试在当前目录中解析这些类型的请求。
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "http": require.resolve("stream-http") }' - 安装 'stream-http' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback: { "http": 假}
./node_modules/axios/lib/adapters/http.js 中的错误 13:12-28
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\axios\lib\adapters'
中解析 'https'重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "https": require.resolve("https-browserify") }' - 安装 'https-browserify' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback:{“https”:假}
./node_modules/axios/lib/adapters/http.js 中的错误 19:10-24
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\axios\lib\adapters'
中解析 'url'重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "url": require.resolve("url/") }' - 安装 'url' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback: { "url": 假}
./node_modules/axios/lib/adapters/http.js 中的错误 21:11-26
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\axios\lib\adapters'
中解析 'zlib'重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }' - 安装 'browserify-zlib' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback:{“zlib”:假}
./node_modules/follow-redirects/index.js 中的错误 1:10-24
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects'
中解析 'url'重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "url": require.resolve("url/") }' - 安装 'url' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback: { "url": 假}
./node_modules/follow-redirects/index.js 中的错误 5:11-26
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects' 中解析 'http' 您指的是 './http' 吗? 应在当前目录中解析的请求需要以“./”开头。 以名称开头的请求被视为模块请求并在模块目录中解析 (node_modules, H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules)。 如果更改源代码不是一个选项,还有一个名为 'preferRelative' 的解析选项,它也尝试在当前目录中解析这些类型的请求。
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "http": require.resolve("stream-http") }' - 安装 'stream-http' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback: { "http": 假}
./node_modules/follow-redirects/index.js 中的错误 7:12-28
找不到模块:错误:无法解析 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects' 中的 'https' 您指的是 './https' 吗? 应在当前目录中解析的请求需要以“./”开头。 以名称开头的请求被视为模块请求并在模块目录中解析 (node_modules, H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules)。 如果更改源代码不是一个选项,还有一个名为 'preferRelative' 的解析选项,它也尝试在当前目录中解析这些类型的请求。
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "https": require.resolve("https-browserify") }' - 安装 'https-browserify' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback:{“https”:假}
./node_modules/follow-redirects/index.js 中的错误 9:15-41
找不到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects'
中解析 'stream'重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "stream": require.resolve("stream-browserify") }' - 安装 'stream-browserify' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback:{“流”:假}
./node_modules/follow-redirects/index.js 中的错误 11:13-30
未找到模块:错误:无法在 'H:\Github\arshwy\reactjs-laravel-simple-dashboard\frontend-react\node_modules\follow-redirects'
中解析 'assert'重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。 这已不再是这种情况。验证您是否需要此模块并为其配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加后备 'resolve.fallback: { "assert": require.resolve("assert/") }' - 安装 'assert' 如果你不想包含一个 polyfill,你可以像这样使用一个空模块: resolve.fallback:{“断言”:假}
我通过
解决了我的错误npm audit fix --force
Webpack 5 不再默认包含节点 shim,因此我们必须 opt-in 我们想要的所有 shim。我们需要向我们的项目添加一些依赖项来完成此操作:
yarn add process browserify-zlib stream-browserify util buffer assert
安装后,修改您的 webpack.config
文件,如下所示
const webpack = require("webpack");
module.exports = {
/* ... */
resolve: {
fallback: {
http : require.resolve("stream-http"),
https : require.resolve("https-browserify"),
url : require.resolve("url"),
process: require.resolve("process/browser"),
zlib: require.resolve("browserify-zlib"),
stream: require.resolve("stream-browserify"),
util: require.resolve("util"),
buffer: require.resolve("buffer"),
asset: require.resolve("assert"),
}
},
plugins: [
new webpack.ProvidePlugin({
Buffer: ["buffer", "Buffer"],
process: "process/browser",
}),
]
/* ... */
}
我通过 运行 这个命令
解决了这个错误npm i url
版本 0.27 [最新] 不适用于我,所以我将其删除并安装了以前的版本,如下所示: “axios”:“^0.21.1” 它很适合我