|
|
|
---
|
|
|
|
id: top-level-api-ja-JP
|
|
|
|
title: Top-Level API
|
|
|
|
permalink: top-level-api-ja-JP.html
|
|
|
|
next: component-api-ja-JP.html
|
|
|
|
redirect_from: "/docs/reference-ja-JP.html"
|
|
|
|
---
|
|
|
|
|
|
|
|
## React
|
|
|
|
|
|
|
|
`React` はReactのライブラリに対するエントリーポイントです。事前にビルドされたパッケージを使用する場合は、グローバルで使用可能です。CommonJSのモジュールを使用する場合は、 `require()` できます。
|
|
|
|
|
|
|
|
|
|
|
|
### React.Component
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
class Component
|
|
|
|
```
|
|
|
|
|
|
|
|
これは、ES6のクラスを使用して定義されている場合の、Reactコンポーネントに対する基底クラスです。ReactでES6のクラスを使用する方法については、[再利用可能なコンポーネント](/react/docs/reusable-components-ja-JP.html#es6-classes)をご覧ください。基底クラスからどのメソッドが実際に提供されるかについては、[コンポーネントAPI](/react/docs/component-api-ja-JP.html)をご覧ください。
|
|
|
|
|
|
|
|
### React.createClass
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
ReactClass createClass(object specification)
|
|
|
|
```
|
|
|
|
|
|
|
|
与えられた仕様に基づいてコンポーネントクラスを作成します。コンポーネントは **ある単一の** 子要素を返す `render` メソッドを実行します。その子要素は勝手に深い子要素の構造を保持しています。コンポーネントが標準的なプロトタイプのクラスと異なっている部分は、newを呼ぶ必要がないということです。それらは内部で(newを行う)インスタンスを構築する便利なラッパーです。
|
|
|
|
|
|
|
|
specificationオブジェクトについての情報は、[コンポーネントのスペックとライフサイクル](/react/docs/component-specs-ja-JP.html)をご覧ください。
|
|
|
|
|
|
|
|
### React.createElement
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
ReactElement createElement(
|
|
|
|
string/ReactClass type,
|
|
|
|
[object props],
|
|
|
|
[children ...]
|
|
|
|
)
|
|
|
|
```
|
|
|
|
|
|
|
|
与えられた型の `ReactElement` を作成し、返します。type引数はhtmlタグ名(例えば、'div'、'span'など)の文字列にも`ReactClass`(`React.createClass` によって作成される)にもなり得ます。
|
|
|
|
|
|
|
|
### React.cloneElement
|
|
|
|
|
|
|
|
```
|
|
|
|
ReactElement cloneElement(
|
|
|
|
ReactElement element,
|
|
|
|
[object props],
|
|
|
|
[children ...]
|
|
|
|
)
|
|
|
|
```
|
|
|
|
|
|
|
|
`element` をスターティングポイントとして使用する新しい `ReactElement` をクローンして返します。
|
|
|
|
結果として生まれる要素はオリジナルの要素のpropsと新しいpropsを暗にマージしたものを保持しています。新しい子要素は現存する子要素を置き換えます。 `React.addons.cloneWithProps` と異なり、オリジナルの要素から得られた `key` と `ref` は保存されます。(`cloneWithProps` とは異なり)propsをマージする際に特別な動きは行いません。詳細については、[v0.13 RC2 blog記事](/react/blog/2015/03/03/react-v0.13-rc2.html)をご覧ください。
|
|
|
|
|
|
|
|
### React.createFactory
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
factoryFunction createFactory(
|
|
|
|
string/ReactClass type
|
|
|
|
)
|
|
|
|
```
|
|
|
|
|
|
|
|
与えられた型のReactElementsを生成する関数を返します。 `React.createElement` と同様に、type引数はhtmlタグ名(例えば、'div'、'span'など)の文字列にも`ReactClass` にもなり得ます。
|
|
|
|
|
|
|
|
### React.render
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
ReactComponent render(
|
|
|
|
ReactElement element,
|
|
|
|
DOMElement container,
|
|
|
|
[function callback]
|
|
|
|
)
|
|
|
|
```
|
|
|
|
|
|
|
|
与えられた `container` によってReactElementをDOMにレンダリングし、コンポーネントへの参照を返します。
|
|
|
|
|
|
|
|
もしReactElementが事前に `container` にレンダリングされていた場合は、更新を行い、DOMが最新のReactのコンポーネントを表すように変化させます。
|
|
|
|
|
|
|
|
オプションのコールバックが与えられた場合は、コンポーネントがレンダリングされたり、更新された後に実行されます。
|
|
|
|
|
|
|
|
> 注意:
|
|
|
|
> `React.render()` は渡されたコンテナーノードの内容を制御します。内部に存在するDOM要素は最初に呼ばれた際に置き換えられます。その後に呼ばれた場合は、ReactのDOMの差分アルゴリズムを使用して、効率的に更新されます。
|
|
|
|
>
|
|
|
|
> `React.render()` はコンテナーノードの変更は行いません(コンテナの子要素のみ変更を行います)。今後、存在する子要素を上書きすることなく、存在するDOMノードにコンポーネントを挿入することが可能になるでしょう。
|
|
|
|
|
|
|
|
### React.unmountComponentAtNode
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
boolean unmountComponentAtNode(DOMElement container)
|
|
|
|
```
|
|
|
|
|
|
|
|
マウントされたReactのコンポーネントをDOMから削除し、そのイベントハンドラとstateをクリーンアップします。コンテナにコンポーネントがマウントされていない場合は、この関数を呼んでも何も行われません。コンポーネントがアンマウントされた場合は `true` を返し、アンマウントするコンポーネントが存在しない場合は `false` を返します。
|
|
|
|
|
|
|
|
### React.renderToString
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
string renderToString(ReactElement element)
|
|
|
|
```
|
|
|
|
|
|
|
|
ReactElementを最初にHTMLにレンダリングします。これはサーバでのみ使用されるべきです。ReactはHTML文字列を返します。このメソッドを、サーバでHTMLを生成し、最初のリクエストに対してマークアップを送るのに使用することができます。そうすることで、ページロードが速くなり、サーチエンジンはSEOの目的でページをクロールします。
|
|
|
|
|
|
|
|
既にサーバでレンダリングされたマークアップを保持しているノードで `React.render()` を呼んだ場合は、Reactはそれを保護し、イベントハンドラを加えます。そうすることで、最初のローディングのパフォーマンスがとても良くなります。
|
|
|
|
|
|
|
|
### React.renderToStaticMarkup
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
string renderToStaticMarkup(ReactElement element)
|
|
|
|
```
|
|
|
|
|
|
|
|
`renderToString` に似ていますが、Reactが内部で使用する `data-react-id` のような外部のDOM属性を作成しません。Reactを、単純な静的なページを生成するために使用したい場合は有用です。外部の属性を取り除くことでメモリを節約することができます。
|
|
|
|
|
|
|
|
### React.isValidElement
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
boolean isValidElement(* object)
|
|
|
|
```
|
|
|
|
|
|
|
|
オブジェクトがReactElementであるかどうか調査します。
|
|
|
|
|
|
|
|
### React.findDOMNode
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
DOMElement findDOMNode(ReactComponent component)
|
|
|
|
```
|
|
|
|
|
|
|
|
このコンポーネントがDOMにマウントされた場合は、対応するネイティブブラウザのDOM要素を返します。このメソッドはDOMの外の値を読み込む場合に有用です。例えば、formフィールドの値やDOMの測定を行う場合があります。 `render` が `null` や `false` を返した場合は、 `findDOMNode` は `null` を返します。
|
|
|
|
|
|
|
|
### React.DOM
|
|
|
|
|
|
|
|
`React.DOM` はDOMコンポーネントのための `React.createElement` の周りの便利なラッパーを提供します。JSXを使用しない場合にのみ使用すべきです。例えば、 `React.DOM.div(null, 'Hello World!')` のように。
|
|
|
|
|
|
|
|
### React.PropTypes
|
|
|
|
|
|
|
|
`React.PropTypes` はコンポーネントに与えられたpropsをバリデーションするためにコンポーネントの `propTypes` と使用できる型を含んでいます。 `propTypes` についての更なる情報は、[再利用可能なコンポーネント](/react/docs/reusable-components-ja-JP.html)をご覧ください。
|
|
|
|
|
|
|
|
### React.Children
|
|
|
|
|
|
|
|
`React.Children` は `this.props.children` の不透明なデータ構造を扱うユーティリティを提供します。
|
|
|
|
|
|
|
|
#### React.Children.map
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
object React.Children.map(object children, function fn [, object thisArg])
|
|
|
|
```
|
|
|
|
|
|
|
|
全ての `children` を含む子要素に対して、 `fn` を実行します。 `this` は `thisArg` にセットされます。 `children` がネストしたオブジェクトや配列だった場合は、実行されません。 `fn` はコンテナのオブジェクトから渡されません。子要素が `null` か `undefined` だった場合は、空のオブジェクトではなく `null` か `undefined` を返します。
|
|
|
|
|
|
|
|
#### React.Children.forEach
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
React.Children.forEach(object children, function fn [, object thisArg])
|
|
|
|
```
|
|
|
|
|
|
|
|
`React.Children.map()` に似ていますが、オブジェクトを返しはしません。
|
|
|
|
|
|
|
|
#### React.Children.count
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
number React.Children.count(object children)
|
|
|
|
```
|
|
|
|
|
|
|
|
`children` の中のコンポーネントの合計数を返します。 `map` や `forEach` に渡されるコールバックが実行される数と等しくなります。
|
|
|
|
|
|
|
|
#### React.Children.only
|
|
|
|
|
|
|
|
```javascript
|
|
|
|
object React.Children.only(object children)
|
|
|
|
```
|
|
|
|
|
|
|
|
`children` の単一の子要素を返します。それ以外の場合は例外をスローします。
|