找不到模块:导入模块以响应时无法解析“ axios”

时间:2019-07-01 18:55:39

标签: javascript express

我正在创建一个npm软件包,它需要axios

当我将其导入我的React应用程序中

  

未找到模块:无法在其中解析“ axios”   '/ Users / ****** / nodework / consume / node_modules / myModule'

我希望客户端能够安装我的软件包模块,而不必在其末端安装其他依赖项。我该怎么做才能让即时通讯已经使用peerDepencies和devDependencies?

例如,这是我的模块的package.json。

{
  "name": "myModule",
  "version": "1.6.4",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "axios": "^0.19.0"
  },
  "peerDependencies": {
    "axios": "^0.19.0"
  }
}

1 个答案:

答案 0 :(得分:1)

对等依赖性使正在使用您的库的开发人员知道自己需要安装这些库,因为您编写的库正在使用它。在安装您的库并且尚未安装这些库时,他们将收到“缺少对等项依赖关系”警告。

dev依赖项通常用于webpack,编译器等构建工具。

开发人员安装您的库时,将不会同时安装对等和开发依赖项。

客户端必须执行类似npm i your-library axios的操作才能安装您的库和对等依赖项。

如果您希望开发人员仅安装您的库而不必自己安装其他组件(例如axios),则必须将其列为常规依赖项。

{
  "dependencies": {
    "axios": "^0.19.0"
  }
}

欢呼