2017-09-04 4 views
-1

docsは型を取りますが、以下の2つの例ではどちらも機能し、最初の例は実際に関数をとっています。これは、ドキュメントが間違っていることを意味しないのですか? createElementのように、型付きの型だけでなく、要素を返す関数もあります。それは私にとって難しいと感じています。React.createElementはパラメータとして正確に何を受け入れますか?

var title = function (props) { 
    return (
    React.createElement(
     'h1', 
     null, 
     'title' 
    ) 
); 
}; 

ReactDOM.render(
    React.createElement(title), 
    document.getElementById('app') 
); 

VS.

React documentationはまた、次の行にこれを述べ
var title = React.createElement(
    'h1', 
    null, 
    'title' 
) 

ReactDOM.render(
    title, 
    document.getElementById('app') 
); 
+1

次の行が表示されます:* "type引数は、タグ名文字列(例えば 'div'や' 'span')やReactコンポーネントタイプ(クラスや関数)です。 * – Li357

+0

@AndrewLi:あなたは答えを書くことができます:) –

+0

@FelixKling確かに、私は先に進みます – Li357

答えて

1

型引数は、(例えば'div'又は'span'など)タグ名文字列、またはReact componentタイプ(クラスまたはいずれかとすることができます関数)。あなたはまた、コンポーネントを反応させるのである最初の引数として関数を渡すことができ

React.createElement('h1', null, 'title'); 

だから、あなたは、このようなdivh1などのネイティブの要素を作成するタイプ、などの文字列を渡すことができます:ここ

var title = function (props) { 
    return (
    React.createElement(
     'h1', 
     null, 
     'title' 
    ) 
); 
}; 

React.createElement(title); 

は、titleが反応成分、M あります具体的には機能コンポーネントです。そのタイプの要素を作成することができます。

関連する問題