Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 与Lerna一起使用Flow并创建React应用程序_Javascript_Reactjs_Npm_Flowtype_Lerna - Fatal编程技术网

Javascript 与Lerna一起使用Flow并创建React应用程序

Javascript 与Lerna一起使用Flow并创建React应用程序,javascript,reactjs,npm,flowtype,lerna,Javascript,Reactjs,Npm,Flowtype,Lerna,我有一个Lerna软件包,其中包含两个不同的React应用程序,使用CreateReact应用程序制作(我们称它们为应用程序a和应用程序B)。其中一个应用程序导入另一个应用程序。我想向这两个应用程序添加流支持。为此,我在全球级别安装了Flow 单独使用每个应用程序时,Flow功能正常。但是,当我将其中一个应用程序导入另一个应用程序时,在应用程序B中出现以下错误: Module parse failed: Unexpected token (8:5) You may need an appropr

我有一个Lerna软件包,其中包含两个不同的React应用程序,使用CreateReact应用程序制作(我们称它们为应用程序a和应用程序B)。其中一个应用程序导入另一个应用程序。我想向这两个应用程序添加流支持。为此,我在全球级别安装了Flow

单独使用每个应用程序时,Flow功能正常。但是,当我将其中一个应用程序导入另一个应用程序时,在应用程序B中出现以下错误:

Module parse failed: Unexpected token (8:5)
You may need an appropriate loader to handle this file type.
import { AppA } from 'app-a';

type Options = {
    key: string,
    onSuccess: function,
我的解释是,Flow没有处理应用程序A,因为它是应用程序B内部的一个符号链接依赖项(由于Lerna)。为了解决这个问题,我尝试了以下方法:

  • 在.flowconfig的[options]下,添加:
    module.name\u mapper='^app-a$'->'/../app-a/src/index.js'
    其中
    index.js
    是app a的入口点。此解决方案来自:
  • 在.flowconfig的[include]下,添加:
    。/app-a/src/index.js
  • 不要全局使用Flow,而是在每个应用程序中分别安装Flow。使用这些单独的流实例,我在App B内部运行了
    Flow ls
    ,发现
    App-B
    App-a
    都是文件列表的一部分,但仍然得到了相同的错误
  • 我一直在避免弹出我的CreateReact应用程序,因为我希望能够轻松地更新到新版本。因此,如果我不必使用flow strip types插件,它将是更理想的

你解决了这个问题吗?@Tallkotten我在流量Github repo上重新发布了这个问题。看起来仍在进行中,这里有链接:谢谢@Rjdlee!