Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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 使用immutable.js和Facebook流进行静态类型检查_Javascript_Reactjs_Flowtype - Fatal编程技术网

Javascript 使用immutable.js和Facebook流进行静态类型检查

Javascript 使用immutable.js和Facebook流进行静态类型检查,javascript,reactjs,flowtype,Javascript,Reactjs,Flowtype,我一直在使用我的react应用程序,我很喜欢它。Facebook也发布了这一消息。Flow可以让我做一些非常酷的事情,比如对prop类型进行编译时验证。问题是我的道具通常是不可变的对象。有没有一种很好的方法可以同时使用Immutable.js和Flow 给定一个Immutable.js对象参数,我可以使用Flow以某种方式指定它应该包装的对象的类型吗?在该对象中,我可能有字符串、数字、布尔值,更重要的是还有其他Immutable.js对象。编辑以添加这些对象 原始答复: 看起来Flow和Immu

我一直在使用我的react应用程序,我很喜欢它。Facebook也发布了这一消息。Flow可以让我做一些非常酷的事情,比如对prop类型进行编译时验证。问题是我的道具通常是不可变的对象。有没有一种很好的方法可以同时使用Immutable.js和Flow

给定一个Immutable.js对象参数,我可以使用Flow以某种方式指定它应该包装的对象的类型吗?在该对象中,我可能有字符串、数字、布尔值,更重要的是还有其他Immutable.js对象。

编辑以添加这些对象

原始答复:


看起来Flow和Immutable.js之间的集成尚未完成。

在撰写本文时,您可以通过从此处抓取接口文件将两者结合使用:

  • 在项目中创建目录,例如
    interfaces
  • 如果不存在
    .flowconfig
    ,则创建一个,并添加以下行
  • .flowconfig

    [libs]
    interfaces/
    
    这将在
    /interfaces/
    目录中查找流定义


    虽然链接到一个资源是不赞成的,但在这种情况下是有意义的,因为这将是最新的(我假设FB会在更新核心库时保持更新)

    也许你可以使用访问器对Immutable.js的动态部分进行静态注释。你的意思是用提供注释访问器的自定义对象包装一个不可变对象吗?@brandon tilley我对使用flowtype标记犹豫不决,因为有一个完全不相关的项目,它与名为@KilamanjaroKablam?提供更多关于JS类型的信息。可用于检查道具类型。这对我很有用。能不能给我举个例子。这个不可变版本的类型是什么<代码>键入someObject={fieldOne:string,fieldTwo:number}不确定为什么投票失败?杰弗里·阿卜杜拉(Geoffrey Abdallah)的回答几乎是一样的,但在他的回答之前就得到了回答?谢谢你的帮助。