2016-11-17 16 views
10

childrenの方がよいでしょうか?子供の反応要素のフロータイプの注釈

type FilterLinkProps={ 
    filter:State$VisibilityFilter, 
    children:any 
}; 

const FilterLink = ({ 
    filter, 
    children 
}:FilterLinkProps) => { 
    return (
    <a href='#' 
     onClick={e => { 
     e.preventDefault(); 
     store.dispatch(({ 
      type: 'SET_VISIBILITY_FILTER', 
      filter 
     }:Action$VisibilityFilter)); 
     }} 
    > 
    {children} 
    </a> 
); 
}; 

答えて

8

このようには見えません。公式React libdefから

declare module react { 
    declare var Children: any; 
    ... 
} 

、その後

declare function cloneElement<Config> (
    element: React$Element<Config>, 
    attributes: $Shape<Config>, 
    children?: any 
): React$Element<Config>; 
23

フローv0.53は、箱から出してchildrenをサポートしています!

import * as React from 'react'; 

type Props = { 
    children?: React.Node, 
}; 

詳細情報はofficial docsまたはそれに関する以下のblog postをお読みください。古いバージョンあなたが次の操作を行うことができます流れのについては

import React from 'react'; 
import type { Children } from 'react'; 
type Props = { 
    children?: Children, 
}; 
const SampleText = (props: Props) => (
    <div>{props.children}</div> 
); 

いずれの場合childrennullable型として宣言する必要があります。

彼らは繊維の到着でいくつかの部分を前進させるように見えます、彼らは願っています! github

チートシートでの議論に続いて

http://www.saltycrane.com/blog/2016/06/flow-type-cheat-sheet/

0
type Text = string | number; 
type Fragment = Iterable<Node>; 
type ReactNode = React$Element<any> 
    | Text 
    | Fragment; 

ReactNodeは、子供のタイプが、買主の危険負担する必要があります。

出典:フロー・レポのgithubのいくつかの問題では、この構成を見てきました。

関連する問題