首页 > 解决方案 > 使用自定义 npm 包进行模块解析失败

问题描述

我是 React 的新手,也是 npm 模块发布的新手,所有事情都有一个开始!

我创建了一个反应模块。

我创建了一个反应应用程序(使用create-react-app),并且我直接导入了模块(而不是通过npm install)。在这种情况下,我没有错误。该应用程序正在编译没有问题。

但是,当我尝试通过从 npm 导入它来使用我的模块时(在它发布之后),它失败了。

为了解决这个问题,我创建了另一个反应应用程序(总是使用create-react-app),然后我使用npm i --save my-module-name.

我通常通过使用import { SomeComponent } from 'my-module-name'而不是直接导入来导入它。

我收到以下错误

Module parse failed: Unexpected token (59:37)
You may need an appropriate loader to handle this file type.
|     }
|
|     generateRecoverActionsContainers = () => {
|

经过一番搜索,似乎来自Webpack的配置。但是,在我的搜索过程中,我看到人们建议不要触摸 react Webpack 默认配置。

从那里开始,我对如何解决这个问题有点迷茫,为什么它在直接导入模块时编译而不是从 node_modules 导入时编译......我应该在我的 npm 模块中有一个 webpack 配置吗?

提前感谢您的宝贵帮助!

标签: reactjsnpmwebpack

解决方案


当您在 npm 上发布模块时,您应该发布已编译的代码。Webpack 无法编译node_modules


推荐阅读