找不到模块:错误:无法解析“./lib/axios”

Posted

技术标签:

【中文标题】找不到模块:错误:无法解析“./lib/axios”【英文标题】:Module not found: Error: Can't resolve './lib/axios' 【发布时间】:2017-10-08 04:45:44 【问题描述】:

我正在尝试在我的项目中导入 axios。但是,由于某些原因,webpack/axios 在尝试构建时给我带来了很大的麻烦。

GroupService.ts

import axios,  AxiosResponse, AxiosInstance  from 'axios';

webpack --display-error-details 错误

ERROR in ./~/axios/index.js
Module not found: Error: Can't resolve './lib/axios' in 'C:\dev\test-project\node_modules\axios'
resolve './lib/axios' in 'C:\dev\test-project\node_modules\axios'
  using description file: C:\dev\test-project\node_modules\axios\package.json (relative path: .)
  after using description file: C:\dev\test-project\node_modules\axios\package.json (relative path: .)
    using description file: C:\dev\test-project\node_modules\axios\package.json (relative path: ./lib/axios)
      as directory
        C:\dev\test-project\node_modules\axios\lib\axios doesn't exist
      no extension
        C:\dev\test-project\node_modules\axios\lib\axios doesn't exist
      .ts
        C:\dev\test-project\node_modules\axios\lib\axios.ts doesn't exist
[C:\dev\test-project\node_modules\axios\lib\axios]
[C:\dev\test-project\node_modules\axios\lib\axios]
[C:\dev\test-project\node_modules\axios\lib\axios.ts]
 @ ./~/axios/index.js 1:17-39
 @ ./src/services/GroupService.ts
 @ ./src/test-project.ts

这是我的 webpack 配置。

webpack.config.js

/** Plugin settings **/
var jsOutputFile = 'dist/testproject.min.js';
var cssOutputFile = 'dist/styles.css';

/** Webpack configuration **/
var webpack = require("webpack");
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var extractCSS = new ExtractTextPlugin(cssOutputFile);

module.exports = 
  // application entry file
  entry: "./src/test-project.ts",

  // bundled application output file
  output: 
    path: __dirname,
    filename: jsOutputFile
  ,

  // Currently we need to add '.ts' to the resolve.extensions array.
  resolve: 
    extensions: ['.ts']
  ,

  // Source maps support ('inline-source-map' also works)
  devtool: 'source-map',

  // Add the loader for .ts files.
  module: 
    rules: [
      
        test: /\.tsx?$/,
        use: 'ts-loader'
      ,
      
        test: /\.scss$/,
        use: extractCSS.extract([
          
            loader: 'css-loader'
          ,
          
            loader: 'sass-loader'
          
        ])
      
    ]
  ,

  plugins: [
    new webpack.optimize.UglifyJsPlugin(
      minimize: true,
      sourceMap: true,
      compress: 
        warnings: true
      
    ),
    extractCSS
  ]
;

【问题讨论】:

【参考方案1】:

Webpack 找不到 axios 的入口点,因为尝试搜索 typescript 文件,但没有这样的文件。您应该将 .js 添加到解析扩展中。更多信息在这里:https://webpack.js.org/configuration/resolve/#resolve-extensions

resolve: 
    extensions: ['.ts', '.js']
  ,

【讨论】:

【参考方案2】:

我遇到了同样的问题,下面的命令解决了我的问题。

npm install --save axios

【讨论】:

【参考方案3】:

对我来说,问题是我在安装 axios 后没有重新启动 yarn start 服务,该库已正确安装在应用程序本地 node_modules 目录中。

解决方案

CTRL+C 停止了 yarn 服务,然后用 yarn start 重新启动它。

【讨论】:

【参考方案4】:

我遇到了同样的问题:

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

我意识到在我的项目的 node_module 文件夹中找不到 axios 文件夹。我已经使用了npm install --save axios,但在我的本地节点模块文件夹中仍然找不到它。

这就是我解决这个问题的方法。我查找了一些我已经完成的其他 react 项目,并将 axios 文件夹复制到了那个旧项目的 node_module 文件夹中。后来我将复制的 axios 文件夹粘贴到我当前项目的 node_module 文件夹中,问题就解决了。

【讨论】:

【参考方案5】:

请记得在安装 axios 之前运行“npm 弹出”(停止服务器)。 这就是我解决这个问题的方法

npm eject
npm install --save axios

【讨论】:

以上是关于找不到模块:错误:无法解析“./lib/axios”的主要内容,如果未能解决你的问题,请参考以下文章

找不到模块:错误:无法解析模块“路由”

在 src/app 外部定义的模块显示错误“找不到模块:错误:无法解析 './' in”

VueJS - 找不到模块:错误:无法解析'@babel/runtime/regenerator'

找不到模块:错误:无法解析“croppie”

找不到模块:错误:无法解析“vue”

找不到模块:错误:无法解析 webpack 中的“util”