将包添加到已发布应用程序的node_modules文件夹中?

时间:2018-04-27 05:03:23

标签: reactjs typescript module yarnpkg

问题

当我在React v15.4.2应用程序中使用Voyager项目中的组件时,出现以下错误:

  

警告:React.createElement:type无效 - 需要一个字符串   (对于内置组件)或类/函数(对于复合   组件)但得到:未定义。你可能忘了导出你的   来自它定义的文件中的组件。检查。的render方法   using Newtonsoft.Json.Linq; void Example () { string json = @"{ Name: 'Bob', HairColor: 'Brown' }"; var bob = JObject.Parse (json); Console.WriteLine ("{0} with {1} hair", bob["Name"], bob["HairColor"]); }

     

未捕获错误:元素类型无效:需要一个字符串(for   内置组件)或类/函数(用于复合组件)   但得到了:未定义。您可能忘记从中导出组件   它定义的文件。检查渲染方法   DataSelectorBase

本地版本可用,已发布版本

我在本地尝试DataSelectorBase到Voyager npm link,我的应用无误以上工作。

然而,当我使用在npm(也是2.0.0-alpha.20)发布的Voyager的相同版本时,我有上述错误。

然后,我发现当我将这两个软件包(2.0.0-alpha.20react-modal)添加到:

element-class

我的应用再次有效!

问题

  • 什么决定哪些软件包应该放入已发布应用的[my_app]/node_modules/datavoyager/node_modules/ 文件夹中? (我使用node_modules来安装我的依赖项,因此yarn 1.3.2将决定在Voyager下嵌套哪些包?)
  • 嵌套yarn即使是一个好习惯吗?
  • 就我而言,如何将这两个软件包添加到发行版的Voyager中?

0 个答案:

没有答案