6

我创建了自己的 npm 包(使用 nwb 创建),在其中使用样式组件。在我的消费应用程序中,我也在使用样式组件。

问题是。通过 .安装我的 npm 包时一切正常 npm install。但是,当使用npm link其他一些 react-router 路由时会出现以下错误消息:

Error: Trying to insert a new style tag, but the given Node is unmounted!

* Are you using a custom target that isn't mounted?
* Does your document not have a valid head element?
* Have you accidentally removed a style tag manually?

在我的 npm 包中,我将 styled-components 设置为对等依赖项和 devDependency,如下所示:

...
"peerDependencies": {
  "react": "16.x",
  "styled-components": "^3.4.4"
},
"devDependencies": {
  "karma-junit-reporter": "^1.2.0",
  "nwb": "0.23.x",
  "react": "^16.4.2",
  "react-dom": "^16.4.2",
  "styled-components": "^3.4.4"
},
...

为什么 styled-components 在使用时无法工作npm link

4

1 回答 1

5

我认为这是因为您安装了两个实例styled-components

因此,将styled-components其作为 devDependency删除package.json并尝试使用$ npm link,或者如果您使用 npm > 5.1.0,请尝试使用npm link --only=production这将排除开发依赖项安装。

注意:node_modules运行前请先删除$ npm link

于 2018-09-21T09:47:43.043 回答