Browse Source

React -> ReactDOM for render() and findDOMNode()

main
Jim 9 years ago
parent
commit
33cd980f0e
  1. 4
      _js/examples/hello.js
  2. 6
      _js/examples/markdown.js
  3. 4
      _js/examples/timer.js
  4. 4
      _js/examples/todo.js
  5. 2
      _js/html-jsx.js
  6. 10
      _js/live_editor.js
  7. 1
      _layouts/default.html
  8. 2
      _posts/2015-10-01-react-render-and-top-level-api.md
  9. 6
      docs/02-displaying-data.it-IT.md
  10. 6
      docs/02-displaying-data.ja-JP.md
  11. 6
      docs/02-displaying-data.ko-KR.md
  12. 6
      docs/02-displaying-data.md
  13. 6
      docs/02-displaying-data.zh-CN.md
  14. 4
      docs/02.1-jsx-in-depth.it-IT.md
  15. 4
      docs/02.1-jsx-in-depth.ja-JP.md
  16. 4
      docs/02.1-jsx-in-depth.ko-KR.md
  17. 4
      docs/02.1-jsx-in-depth.md
  18. 4
      docs/02.1-jsx-in-depth.zh-CN.md
  19. 2
      docs/03-interactivity-and-dynamic-uis.it-IT.md
  20. 2
      docs/03-interactivity-and-dynamic-uis.ja-JP.md
  21. 2
      docs/03-interactivity-and-dynamic-uis.ko-KR.md
  22. 2
      docs/03-interactivity-and-dynamic-uis.md
  23. 2
      docs/03-interactivity-and-dynamic-uis.zh-CN.md
  24. 2
      docs/04-multiple-components.it-IT.md
  25. 2
      docs/04-multiple-components.ja-JP.md
  26. 2
      docs/04-multiple-components.ko-KR.md
  27. 2
      docs/04-multiple-components.md
  28. 2
      docs/04-multiple-components.zh-CN.md
  29. 10
      docs/05-reusable-components.it-IT.md
  30. 6
      docs/05-reusable-components.ja-JP.md
  31. 6
      docs/05-reusable-components.ko-KR.md
  32. 10
      docs/05-reusable-components.md
  33. 6
      docs/05-reusable-components.zh-CN.md
  34. 4
      docs/06-transferring-props.it-IT.md
  35. 4
      docs/06-transferring-props.ja-JP.md
  36. 4
      docs/06-transferring-props.ko-KR.md
  37. 4
      docs/06-transferring-props.md
  38. 4
      docs/06-transferring-props.zh-CN.md
  39. 6
      docs/08-working-with-the-browser.ja-JP.md
  40. 6
      docs/08-working-with-the-browser.ko-KR.md
  41. 6
      docs/08-working-with-the-browser.zh-CN.md
  42. 6
      docs/08.1-more-about-ref-zh-CN.md
  43. 18
      docs/08.1-more-about-refs.it-IT.md
  44. 8
      docs/08.1-more-about-refs.ja-JP.md
  45. 8
      docs/08.1-more-about-refs.ko-KR.md
  46. 18
      docs/08.1-more-about-refs.md
  47. 6
      docs/08.1-more-about-refs.zh-CN.md
  48. 4
      docs/09-tooling-integration.it-IT.md
  49. 4
      docs/09-tooling-integration.md
  50. 4
      docs/09-tooling-integration.zh-CN.md
  51. 6
      docs/10.4-test-utils.it-IT.md
  52. 4
      docs/10.4-test-utils.ja-JP.md
  53. 4
      docs/10.4-test-utils.ko-KR.md
  54. 6
      docs/10.4-test-utils.md
  55. 2
      docs/10.5-clone-with-props.it-IT.md
  56. 2
      docs/10.5-clone-with-props.ja-JP.md
  57. 2
      docs/10.5-clone-with-props.ko-KR.md
  58. 2
      docs/10.5-clone-with-props.md
  59. 6
      docs/getting-started.it-IT.md
  60. 6
      docs/getting-started.ja-JP.md
  61. 6
      docs/getting-started.ko-KR.md
  62. 6
      docs/getting-started.md
  63. 6
      docs/getting-started.zh-CN.md
  64. 18
      docs/ref-01-top-level-api.it-IT.md
  65. 18
      docs/ref-01-top-level-api.ko-KR.md
  66. 18
      docs/ref-01-top-level-api.md
  67. 10
      docs/ref-02-component-api.it-IT.md
  68. 10
      docs/ref-02-component-api.ko-KR.md
  69. 10
      docs/ref-02-component-api.md
  70. 4
      docs/ref-03-component-specs.it-IT.md
  71. 4
      docs/ref-03-component-specs.ko-KR.md
  72. 4
      docs/ref-03-component-specs.md
  73. 22
      docs/ref-09-glossary.it-IT.md
  74. 22
      docs/ref-09-glossary.ko-KR.md
  75. 22
      docs/ref-09-glossary.md
  76. 2
      docs/thinking-in-react.it-IT.md
  77. 2
      docs/thinking-in-react.ko-KR.md
  78. 2
      docs/thinking-in-react.md
  79. 34
      docs/tutorial.it-IT.md
  80. 32
      docs/tutorial.ja-JP.md
  81. 34
      docs/tutorial.ko-KR.md
  82. 34
      docs/tutorial.md
  83. 4
      downloads.md
  84. 42
      js/react-dom.js
  85. 13586
      js/react.js
  86. 2
      tips/02-inline-styles.ko-KR.md
  87. 2
      tips/02-inline-styles.md
  88. 6
      tips/03-if-else-in-JSX.ko-KR.md
  89. 6
      tips/03-if-else-in-JSX.md
  90. 2
      tips/06-style-props-value-px.ko-KR.md
  91. 2
      tips/06-style-props-value-px.md
  92. 4
      tips/07-children-props-type.ko-KR.md
  93. 4
      tips/07-children-props-type.md
  94. 4
      tips/08-controlled-input-null-value.ko-KR.md
  95. 4
      tips/08-controlled-input-null-value.md
  96. 6
      tips/10-props-in-getInitialState-as-anti-pattern.ko-KR.md
  97. 6
      tips/10-props-in-getInitialState-as-anti-pattern.md
  98. 2
      tips/11-dom-event-listeners.ko-KR.md
  99. 2
      tips/11-dom-event-listeners.md
  100. 2
      tips/12-initial-ajax.ko-KR.md

4
_js/examples/hello.js

@ -5,10 +5,10 @@ var HelloMessage = React.createClass({
} }
}); });
React.render(<HelloMessage name="John" />, mountNode); ReactDOM.render(<HelloMessage name="John" />, mountNode);
`; `;
React.render( ReactDOM.render(
<ReactPlayground codeText={HELLO_COMPONENT} />, <ReactPlayground codeText={HELLO_COMPONENT} />,
document.getElementById('helloExample') document.getElementById('helloExample')
); );

6
_js/examples/markdown.js

@ -4,7 +4,7 @@ var MarkdownEditor = React.createClass({
return {value: 'Type some *markdown* here!'}; return {value: 'Type some *markdown* here!'};
}, },
handleChange: function() { handleChange: function() {
this.setState({value: React.findDOMNode(this.refs.textarea).value}); this.setState({value: this.refs.textarea.value});
}, },
rawMarkup: function() { rawMarkup: function() {
return { __html: marked(this.state.value, {sanitize: true}) }; return { __html: marked(this.state.value, {sanitize: true}) };
@ -27,10 +27,10 @@ var MarkdownEditor = React.createClass({
} }
}); });
React.render(<MarkdownEditor />, mountNode); ReactDOM.render(<MarkdownEditor />, mountNode);
`; `;
React.render( ReactDOM.render(
<ReactPlayground codeText={MARKDOWN_COMPONENT} />, <ReactPlayground codeText={MARKDOWN_COMPONENT} />,
document.getElementById('markdownExample') document.getElementById('markdownExample')
); );

4
_js/examples/timer.js

@ -19,10 +19,10 @@ var Timer = React.createClass({
} }
}); });
React.render(<Timer />, mountNode); ReactDOM.render(<Timer />, mountNode);
`; `;
React.render( ReactDOM.render(
<ReactPlayground codeText={TIMER_COMPONENT} />, <ReactPlayground codeText={TIMER_COMPONENT} />,
document.getElementById('timerExample') document.getElementById('timerExample')
); );

4
_js/examples/todo.js

@ -34,10 +34,10 @@ var TodoApp = React.createClass({
} }
}); });
React.render(<TodoApp />, mountNode); ReactDOM.render(<TodoApp />, mountNode);
`; `;
React.render( ReactDOM.render(
<ReactPlayground codeText={TODO_COMPONENT} />, <ReactPlayground codeText={TODO_COMPONENT} />,
document.getElementById('todoExample') document.getElementById('todoExample')
); );

2
_js/html-jsx.js

@ -78,5 +78,5 @@ var HELLO_COMPONENT = "\
} }
}); });
React.render(<HTMLtoJSXComponent />, document.getElementById('jsxCompiler')); ReactDOM.render(<HTMLtoJSXComponent />, document.getElementById('jsxCompiler'));
}()); }());

10
_js/live_editor.js

@ -21,7 +21,7 @@ var CodeMirrorEditor = React.createClass({
componentDidMount: function() { componentDidMount: function() {
if (IS_MOBILE) return; if (IS_MOBILE) return;
this.editor = CodeMirror.fromTextArea(React.findDOMNode(this.refs.editor), { this.editor = CodeMirror.fromTextArea(ReactDOM.findDOMNode(this.refs.editor), {
mode: 'javascript', mode: 'javascript',
lineNumbers: this.props.lineNumbers, lineNumbers: this.props.lineNumbers,
lineWrapping: true, lineWrapping: true,
@ -194,16 +194,16 @@ var ReactPlayground = React.createClass({
}, },
executeCode: function() { executeCode: function() {
var mountNode = React.findDOMNode(this.refs.mount); var mountNode = ReactDOM.findDOMNode(this.refs.mount);
try { try {
React.unmountComponentAtNode(mountNode); ReactDOM.unmountComponentAtNode(mountNode);
} catch (e) { } } catch (e) { }
try { try {
var compiledCode = this.compileCode(); var compiledCode = this.compileCode();
if (this.props.renderCode) { if (this.props.renderCode) {
React.render( ReactDOM.render(
<CodeMirrorEditor codeText={compiledCode} readOnly={true} />, <CodeMirrorEditor codeText={compiledCode} readOnly={true} />,
mountNode mountNode
); );
@ -212,7 +212,7 @@ var ReactPlayground = React.createClass({
} }
} catch (err) { } catch (err) {
this.setTimeout(function() { this.setTimeout(function() {
React.render( ReactDOM.render(
<div className="playgroundError">{err.toString()}</div>, <div className="playgroundError">{err.toString()}</div>,
mountNode mountNode
); );

1
_layouts/default.html

@ -31,6 +31,7 @@
<script src="/react/js/codemirror.js"></script> <script src="/react/js/codemirror.js"></script>
<script src="/react/js/javascript.js"></script> <script src="/react/js/javascript.js"></script>
<script src="/react/js/react.js"></script> <script src="/react/js/react.js"></script>
<script src="/react/js/react-dom.js"></script>
<script src="/react/js/babel-browser.min.js"></script> <script src="/react/js/babel-browser.min.js"></script>
<script src="/react/js/live_editor.js"></script> <script src="/react/js/live_editor.js"></script>
</head> </head>

2
_posts/2015-10-01-react-render-and-top-level-api.md

@ -1,5 +1,5 @@
--- ---
title: "React.render and the Top Level React API" title: "ReactDOM.render and the Top Level React API"
author: jimandsebastian author: jimandsebastian
--- ---

6
docs/02-displaying-data.it-IT.md

@ -48,7 +48,7 @@ var HelloWorld = React.createClass({
}); });
setInterval(function() { setInterval(function() {
React.render( ReactDOM.render(
<HelloWorld date={new Date()} />, <HelloWorld date={new Date()} />,
document.getElementById('example') document.getElementById('example')
); );
@ -107,7 +107,7 @@ JSX è completamente opzionale; non è necessario utilizzare JSX con React. Puoi
var child1 = React.createElement('li', null, 'Primo Contenuto di Testo'); var child1 = React.createElement('li', null, 'Primo Contenuto di Testo');
var child2 = React.createElement('li', null, 'Secondo Contenuto di Testo'); var child2 = React.createElement('li', null, 'Secondo Contenuto di Testo');
var root = React.createElement('ul', { className: 'my-list' }, child1, child2); var root = React.createElement('ul', { className: 'my-list' }, child1, child2);
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
Per comodità, puoi creare funzioni factory scorciatoia per costruire elementi da componenti personalizzati. Per comodità, puoi creare funzioni factory scorciatoia per costruire elementi da componenti personalizzati.
@ -116,7 +116,7 @@ Per comodità, puoi creare funzioni factory scorciatoia per costruire elementi d
var Factory = React.createFactory(ComponentClass); var Factory = React.createFactory(ComponentClass);
... ...
var root = Factory({ custom: 'prop' }); var root = Factory({ custom: 'prop' });
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
React possiede già delle factory predefinite per i tag HTML comuni: React possiede già delle factory predefinite per i tag HTML comuni:

6
docs/02-displaying-data.ja-JP.md

@ -48,7 +48,7 @@ var HelloWorld = React.createClass({
}); });
setInterval(function() { setInterval(function() {
React.render( ReactDOM.render(
<HelloWorld date={new Date()} />, <HelloWorld date={new Date()} />,
document.getElementById('example') document.getElementById('example')
); );
@ -104,7 +104,7 @@ JSXは完全にオプションです。Reactと一緒にJSXを使う必要はあ
var child1 = React.createElement('li', null, 'First Text Content'); var child1 = React.createElement('li', null, 'First Text Content');
var child2 = React.createElement('li', null, 'Second Text Content'); var child2 = React.createElement('li', null, 'Second Text Content');
var root = React.createElement('ul', { className: 'my-list' }, child1, child2); var root = React.createElement('ul', { className: 'my-list' }, child1, child2);
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
便利に書くために、カスタムコンポーネントで要素を作るために簡略した記法でファクトリー関数を作ることができます。 便利に書くために、カスタムコンポーネントで要素を作るために簡略した記法でファクトリー関数を作ることができます。
@ -112,7 +112,7 @@ React.render(root, document.getElementById('example'));
var Factory = React.createFactory(ComponentClass); var Factory = React.createFactory(ComponentClass);
... ...
var root = Factory({ custom: 'prop' }); var root = Factory({ custom: 'prop' });
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
Reactはすでに、共通なHTMLのタグについてはビルトインの関数を持っています。 Reactはすでに、共通なHTMLのタグについてはビルトインの関数を持っています。

6
docs/02-displaying-data.ko-KR.md

@ -47,7 +47,7 @@ var HelloWorld = React.createClass({
}); });
setInterval(function() { setInterval(function() {
React.render( ReactDOM.render(
<HelloWorld date={new Date()} />, <HelloWorld date={new Date()} />,
document.getElementById('example') document.getElementById('example')
); );
@ -106,7 +106,7 @@ JSX는 완전히 선택적입니다. 당신은 React와 JSX를 함께 사용하
var child1 = React.createElement('li', null, 'First Text Content'); var child1 = React.createElement('li', null, 'First Text Content');
var child2 = React.createElement('li', null, 'Second Text Content'); var child2 = React.createElement('li', null, 'Second Text Content');
var root = React.createElement('ul', { className: 'my-list' }, child1, child2); var root = React.createElement('ul', { className: 'my-list' }, child1, child2);
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
편의를 위하여, 당신은 팩토리 함수 헬퍼들을 이용해 커스텀 컴포넌트로부터 엘리먼트들을 만들 수 있습니다. 편의를 위하여, 당신은 팩토리 함수 헬퍼들을 이용해 커스텀 컴포넌트로부터 엘리먼트들을 만들 수 있습니다.
@ -115,7 +115,7 @@ React.render(root, document.getElementById('example'));
var Factory = React.createFactory(ComponentClass); var Factory = React.createFactory(ComponentClass);
... ...
var root = Factory({ custom: 'prop' }); var root = Factory({ custom: 'prop' });
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
React는 이미 일반적인 HTML 태그에 대한 빌트인 팩토리를 가지고 있습니다. React는 이미 일반적인 HTML 태그에 대한 빌트인 팩토리를 가지고 있습니다.

6
docs/02-displaying-data.md

@ -48,7 +48,7 @@ var HelloWorld = React.createClass({
}); });
setInterval(function() { setInterval(function() {
React.render( ReactDOM.render(
<HelloWorld date={new Date()} />, <HelloWorld date={new Date()} />,
document.getElementById('example') document.getElementById('example')
); );
@ -107,7 +107,7 @@ JSX is completely optional; you don't have to use JSX with React. You can create
var child1 = React.createElement('li', null, 'First Text Content'); var child1 = React.createElement('li', null, 'First Text Content');
var child2 = React.createElement('li', null, 'Second Text Content'); var child2 = React.createElement('li', null, 'Second Text Content');
var root = React.createElement('ul', { className: 'my-list' }, child1, child2); var root = React.createElement('ul', { className: 'my-list' }, child1, child2);
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
For convenience, you can create short-hand factory functions to create elements from custom components. For convenience, you can create short-hand factory functions to create elements from custom components.
@ -116,7 +116,7 @@ For convenience, you can create short-hand factory functions to create elements
var Factory = React.createFactory(ComponentClass); var Factory = React.createFactory(ComponentClass);
... ...
var root = Factory({ custom: 'prop' }); var root = Factory({ custom: 'prop' });
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
React already has built-in factories for common HTML tags: React already has built-in factories for common HTML tags:

6
docs/02-displaying-data.zh-CN.md

@ -49,7 +49,7 @@ var HelloWorld = React.createClass({
}); });
setInterval(function() { setInterval(function() {
React.render( ReactDOM.render(
<HelloWorld date={new Date()} />, <HelloWorld date={new Date()} />,
document.getElementById('example') document.getElementById('example')
); );
@ -105,7 +105,7 @@ JSX 类似于 HTML,但不是完全一样。参考 [JSX 陷阱](/react/docs/jsx
```javascript ```javascript
var child = React.createElement('li', null, 'Text Content'); var child = React.createElement('li', null, 'Text Content');
var root = React.createElement('ul', { className: 'my-list' }, child); var root = React.createElement('ul', { className: 'my-list' }, child);
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
方便起见,你可以创建基于自定义组件的速记工厂方法。 方便起见,你可以创建基于自定义组件的速记工厂方法。
@ -114,7 +114,7 @@ React.render(root, document.getElementById('example'));
var Factory = React.createFactory(ComponentClass); var Factory = React.createFactory(ComponentClass);
... ...
var root = Factory({ custom: 'prop' }); var root = Factory({ custom: 'prop' });
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
React 已经为 HTML 标签提供内置工厂方法。 React 已经为 HTML 标签提供内置工厂方法。

4
docs/02.1-jsx-in-depth.it-IT.md

@ -26,7 +26,7 @@ Per rendere untag HTML, usa nomi di tag minuscoli in JSX:
```javascript ```javascript
var myDivElement = <div className="foo" />; var myDivElement = <div className="foo" />;
React.render(myDivElement, document.getElementById('example')); ReactDOM.render(myDivElement, document.getElementById('example'));
``` ```
Per rendere un componente React, definisci una variabile locale che comincia con una lettera maiuscola: Per rendere un componente React, definisci una variabile locale che comincia con una lettera maiuscola:
@ -34,7 +34,7 @@ Per rendere un componente React, definisci una variabile locale che comincia con
```javascript ```javascript
var MyComponent = React.createClass({/*...*/}); var MyComponent = React.createClass({/*...*/});
var myElement = <MyComponent someProperty={true} />; var myElement = <MyComponent someProperty={true} />;
React.render(myElement, document.getElementById('example')); ReactDOM.render(myElement, document.getElementById('example'));
``` ```
Il JSX di React utilizza la convenzione maiuscolo o minuscolo per distinguere tra classi di componenti locali e tag HTML. Il JSX di React utilizza la convenzione maiuscolo o minuscolo per distinguere tra classi di componenti locali e tag HTML.

4
docs/02.1-jsx-in-depth.ja-JP.md

@ -26,7 +26,7 @@ ReactはHTMLタグ(文字列)とReactコンポーネント(クラス)の
```javascript ```javascript
var myDivElement = <div className="foo" />; var myDivElement = <div className="foo" />;
React.render(myDivElement, document.getElementById('example')); ReactDOM.render(myDivElement, document.getElementById('example'));
``` ```
以下のように大文字から始まるローカル変数を作成するだけで、Reactのコンポーネントをレンダリングできます。 以下のように大文字から始まるローカル変数を作成するだけで、Reactのコンポーネントをレンダリングできます。
@ -34,7 +34,7 @@ React.render(myDivElement, document.getElementById('example'));
```javascript ```javascript
var MyComponent = React.createClass({/*...*/}); var MyComponent = React.createClass({/*...*/});
var myElement = <MyComponent someProperty={true} />; var myElement = <MyComponent someProperty={true} />;
React.render(myElement, document.getElementById('example')); ReactDOM.render(myElement, document.getElementById('example'));
``` ```
ReactのJSXは大文字と小文字を使うことで、ローカルのコンポーネントクラスとHTMLタグを識別する習慣があります。 ReactのJSXは大文字と小文字を使うことで、ローカルのコンポーネントクラスとHTMLタグを識別する習慣があります。

4
docs/02.1-jsx-in-depth.ko-KR.md

@ -26,7 +26,7 @@ HTML 태그를 렌더하려면, 그냥 JSX에 소문자 태그를 사용하세
```javascript ```javascript
var myDivElement = <div className="foo" />; var myDivElement = <div className="foo" />;
React.render(myDivElement, document.getElementById('example')); ReactDOM.render(myDivElement, document.getElementById('example'));
``` ```
React 컴포넌트를 렌더하려면, 대문자로 시작하는 로컬 변수를 만드세요. React 컴포넌트를 렌더하려면, 대문자로 시작하는 로컬 변수를 만드세요.
@ -34,7 +34,7 @@ React 컴포넌트를 렌더하려면, 대문자로 시작하는 로컬 변수
```javascript ```javascript
var MyComponent = React.createClass({/*...*/}); var MyComponent = React.createClass({/*...*/});
var myElement = <MyComponent someProperty={true} />; var myElement = <MyComponent someProperty={true} />;
React.render(myElement, document.getElementById('example')); ReactDOM.render(myElement, document.getElementById('example'));
``` ```
React JSX는 대소문자를 로컬 컴포넌트 클래스와 HTML 태그를 구별하는 컨벤션으로 사용합니다. React JSX는 대소문자를 로컬 컴포넌트 클래스와 HTML 태그를 구별하는 컨벤션으로 사용합니다.

4
docs/02.1-jsx-in-depth.md

@ -26,7 +26,7 @@ To render a HTML tag, just use lower-case tag names in JSX:
```javascript ```javascript
var myDivElement = <div className="foo" />; var myDivElement = <div className="foo" />;
React.render(myDivElement, document.getElementById('example')); ReactDOM.render(myDivElement, document.getElementById('example'));
``` ```
To render a React Component, just create a local variable that starts with an upper-case letter: To render a React Component, just create a local variable that starts with an upper-case letter:
@ -34,7 +34,7 @@ To render a React Component, just create a local variable that starts with an up
```javascript ```javascript
var MyComponent = React.createClass({/*...*/}); var MyComponent = React.createClass({/*...*/});
var myElement = <MyComponent someProperty={true} />; var myElement = <MyComponent someProperty={true} />;
React.render(myElement, document.getElementById('example')); ReactDOM.render(myElement, document.getElementById('example'));
``` ```
React's JSX uses the upper vs. lower case convention to distinguish between local component classes and HTML tags. React's JSX uses the upper vs. lower case convention to distinguish between local component classes and HTML tags.

4
docs/02.1-jsx-in-depth.zh-CN.md

@ -28,7 +28,7 @@ React 可以渲染 HTML 标签 (strings) 或 React 组件 (classes)。
```javascript ```javascript
var myDivElement = <div className="foo" />; var myDivElement = <div className="foo" />;
React.render(myDivElement, document.getElementById('example')); ReactDOM.render(myDivElement, document.getElementById('example'));
``` ```
要渲染 React 组件,只需创建一个大写字母开头的本地变量。 要渲染 React 组件,只需创建一个大写字母开头的本地变量。
@ -36,7 +36,7 @@ React.render(myDivElement, document.getElementById('example'));
```javascript ```javascript
var MyComponent = React.createClass({/*...*/}); var MyComponent = React.createClass({/*...*/});
var myElement = <MyComponent someProperty={true} />; var myElement = <MyComponent someProperty={true} />;
React.render(myElement, document.getElementById('example')); ReactDOM.render(myElement, document.getElementById('example'));
``` ```
React 的 JSX 使用大、小写的约定来区分本地组件的类和 HTML 标签。 React 的 JSX 使用大、小写的约定来区分本地组件的类和 HTML 标签。

2
docs/03-interactivity-and-dynamic-uis.it-IT.md

@ -29,7 +29,7 @@ var LikeButton = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<LikeButton />, <LikeButton />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/03-interactivity-and-dynamic-uis.ja-JP.md

@ -29,7 +29,7 @@ var LikeButton = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<LikeButton />, <LikeButton />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/03-interactivity-and-dynamic-uis.ko-KR.md

@ -29,7 +29,7 @@ var LikeButton = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<LikeButton />, <LikeButton />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/03-interactivity-and-dynamic-uis.md

@ -29,7 +29,7 @@ var LikeButton = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<LikeButton />, <LikeButton />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/03-interactivity-and-dynamic-uis.zh-CN.md

@ -29,7 +29,7 @@ var LikeButton = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<LikeButton />, <LikeButton />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/04-multiple-components.it-IT.md

@ -48,7 +48,7 @@ var ProfileLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Avatar username="pwh" />, <Avatar username="pwh" />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/04-multiple-components.ja-JP.md

@ -46,7 +46,7 @@ var ProfileLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Avatar username="pwh" />, <Avatar username="pwh" />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/04-multiple-components.ko-KR.md

@ -48,7 +48,7 @@ var ProfileLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Avatar username="pwh" />, <Avatar username="pwh" />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/04-multiple-components.md

@ -48,7 +48,7 @@ var ProfileLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Avatar username="pwh" />, <Avatar username="pwh" />,
document.getElementById('example') document.getElementById('example')
); );

2
docs/04-multiple-components.zh-CN.md

@ -47,7 +47,7 @@ var ProfileLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Avatar username="pwh" />, <Avatar username="pwh" />,
document.getElementById('example') document.getElementById('example')
); );

10
docs/05-reusable-components.it-IT.md

@ -111,7 +111,7 @@ var CheckLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CheckLink href="/checked.html"> <CheckLink href="/checked.html">
Clicca qui! Clicca qui!
</CheckLink>, </CheckLink>,
@ -179,7 +179,7 @@ var TickTock = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<TickTock />, <TickTock />,
document.getElementById('example') document.getElementById('example')
); );
@ -197,7 +197,7 @@ class HelloMessage extends React.Component {
return <div>Ciao {this.props.name}</div>; return <div>Ciao {this.props.name}</div>;
} }
} }
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```
L'API è simile a `React.createClass` con l'eccezione del metodo `getInitialState`. Anziché fornire un metodo `getInitialState` a parte, imposti la tua proprietà `state` nel costruttore. L'API è simile a `React.createClass` con l'eccezione del metodo `getInitialState`. Anziché fornire un metodo `getInitialState` a parte, imposti la tua proprietà `state` nel costruttore.
@ -243,14 +243,14 @@ Puoi anche definire le tue classi React come semplici funzioni JavaScript. Ad es
function HelloMessage(props) { function HelloMessage(props) {
return <div>Ciao {props.name}</div>; return <div>Ciao {props.name}</div>;
} }
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```
Oppure usando la nuova sintassi freccia di ES6: Oppure usando la nuova sintassi freccia di ES6:
```javascript ```javascript
var HelloMessage = (props) => <div>Ciao {props.name}</div>; var HelloMessage = (props) => <div>Ciao {props.name}</div>;
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```

6
docs/05-reusable-components.ja-JP.md

@ -107,7 +107,7 @@ var CheckLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CheckLink href="/checked.html"> <CheckLink href="/checked.html">
Click here! Click here!
</CheckLink>, </CheckLink>,
@ -175,7 +175,7 @@ var TickTock = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<TickTock />, <TickTock />,
document.getElementById('example') document.getElementById('example')
); );
@ -193,7 +193,7 @@ class HelloMessage extends React.Component {
return <div>Hello {this.props.name}</div>; return <div>Hello {this.props.name}</div>;
} }
} }
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```
APIは `getInitialState` という例外を除き、 `React.createClass` と同じです。APIが異なっている `getInitialState` メソッドを提供する代わりに、コンストラクタの中に `state` プロパティをセットします。 APIは `getInitialState` という例外を除き、 `React.createClass` と同じです。APIが異なっている `getInitialState` メソッドを提供する代わりに、コンストラクタの中に `state` プロパティをセットします。

6
docs/05-reusable-components.ko-KR.md

@ -108,7 +108,7 @@ var CheckLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CheckLink href="/checked.html"> <CheckLink href="/checked.html">
Click here! Click here!
</CheckLink>, </CheckLink>,
@ -176,7 +176,7 @@ var TickTock = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<TickTock />, <TickTock />,
document.getElementById('example') document.getElementById('example')
); );
@ -195,7 +195,7 @@ class HelloMessage extends React.Component {
return <div>Hello {this.props.name}</div>; return <div>Hello {this.props.name}</div>;
} }
} }
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```
API는 `getInitialState`를 제외하고 `React.createClass`와 유사합니다. 별도의 `getInitialState` 메소드 대신에, 필요한 `state` 프로퍼티를 생성자에서 설정할 수 있습니다. API는 `getInitialState`를 제외하고 `React.createClass`와 유사합니다. 별도의 `getInitialState` 메소드 대신에, 필요한 `state` 프로퍼티를 생성자에서 설정할 수 있습니다.

10
docs/05-reusable-components.md

@ -110,7 +110,7 @@ var CheckLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CheckLink href="/checked.html"> <CheckLink href="/checked.html">
Click here! Click here!
</CheckLink>, </CheckLink>,
@ -179,7 +179,7 @@ var TickTock = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<TickTock />, <TickTock />,
document.getElementById('example') document.getElementById('example')
); );
@ -197,7 +197,7 @@ class HelloMessage extends React.Component {
return <div>Hello {this.props.name}</div>; return <div>Hello {this.props.name}</div>;
} }
} }
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```
The API is similar to `React.createClass` with the exception of `getInitialState`. Instead of providing a separate `getInitialState` method, you set up your own `state` property in the constructor. The API is similar to `React.createClass` with the exception of `getInitialState`. Instead of providing a separate `getInitialState` method, you set up your own `state` property in the constructor.
@ -243,14 +243,14 @@ You may also define your React classes as a plain JavaScript function. For examp
function HelloMessage(props) { function HelloMessage(props) {
return <div>Hello {props.name}</div>; return <div>Hello {props.name}</div>;
} }
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```
Or using the new ES6 arrow syntax: Or using the new ES6 arrow syntax:
```javascript ```javascript
var HelloMessage = (props) => <div>Hello {props.name}</div>; var HelloMessage = (props) => <div>Hello {props.name}</div>;
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```

6
docs/05-reusable-components.zh-CN.md

@ -105,7 +105,7 @@ var CheckLink = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CheckLink href="/checked.html"> <CheckLink href="/checked.html">
Click here! Click here!
</CheckLink>, </CheckLink>,
@ -174,7 +174,7 @@ var TickTock = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<TickTock />, <TickTock />,
document.getElementById('example') document.getElementById('example')
); );
@ -192,7 +192,7 @@ class HelloMessage extends React.Component {
return <div>Hello {this.props.name}</div>; return <div>Hello {this.props.name}</div>;
} }
} }
React.render(<HelloMessage name="Sebastian" />, mountNode); ReactDOM.render(<HelloMessage name="Sebastian" />, mountNode);
``` ```
API近似于 `React.createClass` 除了 `getInitialState`。 你应该在构造函数里设置你的`state`,而不是提供一个单独的 `getInitialState` 方法。 API近似于 `React.createClass` 除了 `getInitialState`。 你应该在构造函数里设置你的`state`,而不是提供一个单独的 `getInitialState` 方法。

4
docs/06-transferring-props.it-IT.md

@ -37,7 +37,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
Ciao mondo! Ciao mondo!
</FancyCheckbox>, </FancyCheckbox>,
@ -74,7 +74,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
Ciao mondo! Ciao mondo!
</FancyCheckbox>, </FancyCheckbox>,

4
docs/06-transferring-props.ja-JP.md

@ -39,7 +39,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
Hello world! Hello world!
</FancyCheckbox>, </FancyCheckbox>,
@ -75,7 +75,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
Hello world! Hello world!
</FancyCheckbox>, </FancyCheckbox>,

4
docs/06-transferring-props.ko-KR.md

@ -37,7 +37,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
세상아 안녕! 세상아 안녕!
</FancyCheckbox>, </FancyCheckbox>,
@ -74,7 +74,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
세상아 안녕! 세상아 안녕!
</FancyCheckbox>, </FancyCheckbox>,

4
docs/06-transferring-props.md

@ -37,7 +37,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
Hello world! Hello world!
</FancyCheckbox>, </FancyCheckbox>,
@ -74,7 +74,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
Hello world! Hello world!
</FancyCheckbox>, </FancyCheckbox>,

4
docs/06-transferring-props.zh-CN.md

@ -37,7 +37,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
Hello world! Hello world!
</FancyCheckbox>, </FancyCheckbox>,
@ -74,7 +74,7 @@ var FancyCheckbox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<FancyCheckbox checked={true} onClick={console.log.bind(console)}> <FancyCheckbox checked={true} onClick={console.log.bind(console)}>
Hello world! Hello world!
</FancyCheckbox>, </FancyCheckbox>,

6
docs/08-working-with-the-browser.ja-JP.md

@ -18,7 +18,7 @@ ReactはDOMと直接対話を行わないため、とても速いです。React
## 参照とfindDOMNode() ## 参照とfindDOMNode()
ブラウザと相互に影響するために、DOMノードへの参照が必要になるでしょう。ReactはコンポーネントのDOMノードへの参照を得ることができる `React.findDOMNode(component)` 関数を持っています。 ブラウザと相互に影響するために、DOMノードへの参照が必要になるでしょう。ReactはコンポーネントのDOMノードへの参照を得ることができる `ReactDOM.findDOMNode(component)` 関数を持っています。
> 注意: > 注意:
> `findDOMNode()` はマウントされたコンポーネントの上でのみ動きます(これは、DOMに配置されたコンポーネントという意味です)。まだマウントされていない(まだ作成されていないコンポーネントの上で `render()``findDOMNode()` を呼ぶようなものです)コンポーネントの上でこれを呼ぼうとした場合、例外がスローされます。 > `findDOMNode()` はマウントされたコンポーネントの上でのみ動きます(これは、DOMに配置されたコンポーネントという意味です)。まだマウントされていない(まだ作成されていないコンポーネントの上で `render()``findDOMNode()` を呼ぶようなものです)コンポーネントの上でこれを呼ぼうとした場合、例外がスローされます。
@ -29,7 +29,7 @@ Reactのコンポーネントへの参照を得るためには、現在のReact
var MyComponent = React.createClass({ var MyComponent = React.createClass({
handleClick: function() { handleClick: function() {
// 生のDOMのAPIを使ってテキスト入力に明確にフォーカスします。 // 生のDOMのAPIを使ってテキスト入力に明確にフォーカスします。
React.findDOMNode(this.refs.myTextInput).focus(); ReactDOM.findDOMNode(this.refs.myTextInput).focus();
}, },
render: function() { render: function() {
// この参照属性はコンポーネントがマウントされた時に、 // この参照属性はコンポーネントがマウントされた時に、
@ -47,7 +47,7 @@ var MyComponent = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<MyComponent />, <MyComponent />,
document.getElementById('example') document.getElementById('example')
); );

6
docs/08-working-with-the-browser.ko-KR.md

@ -20,7 +20,7 @@ React는 DOM을 직접 다루지 않기 때문에 굉장히 빠릅니다. React
## Refs와 findDOMNode() ## Refs와 findDOMNode()
브라우저와 상호 작용하려면 DOM 노드에 대한 참조가 필요합니다. React는 `React.findDOMNode(component)` 함수를 갖고 있으며, 이를 통해서 컴포넌트의 DOM 노드의 참조를 얻을 수 있습니다. 브라우저와 상호 작용하려면 DOM 노드에 대한 참조가 필요합니다. React는 `ReactDOM.findDOMNode(component)` 함수를 갖고 있으며, 이를 통해서 컴포넌트의 DOM 노드의 참조를 얻을 수 있습니다.
> 주의: > 주의:
> >
@ -32,7 +32,7 @@ React 컴포넌트에 대한 참조는 현재의 React 컴포넌트를 위해 `t
var MyComponent = React.createClass({ var MyComponent = React.createClass({
handleClick: function() { handleClick: function() {
// raw DOM API를 사용해 명시적으로 텍스트 인풋을 포커스 합니다. // raw DOM API를 사용해 명시적으로 텍스트 인풋을 포커스 합니다.
React.findDOMNode(this.refs.myTextInput).focus(); ReactDOM.findDOMNode(this.refs.myTextInput).focus();
}, },
render: function() { render: function() {
// ref 어트리뷰트는 컴포넌트가 마운트되면 그에 대한 참조를 this.refs에 추가합니다. // ref 어트리뷰트는 컴포넌트가 마운트되면 그에 대한 참조를 this.refs에 추가합니다.
@ -49,7 +49,7 @@ var MyComponent = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<MyComponent />, <MyComponent />,
document.getElementById('example') document.getElementById('example')
); );

6
docs/08-working-with-the-browser.zh-CN.md

@ -20,7 +20,7 @@ React如此快速是因为它从不直接操作DOM。React维持了一个快速
## Refs 和 findDOMNode() ## Refs 和 findDOMNode()
为了与浏览器互动,你需要一个指向DOM node的引用。React有一个函数`React.findDOMNode(component)` ,你能调用以得到一个指向指向组件的DOM node的引用。 为了与浏览器互动,你需要一个指向DOM node的引用。React有一个函数`ReactDOM.findDOMNode(component)` ,你能调用以得到一个指向指向组件的DOM node的引用。
> 注意: > 注意:
> >
@ -32,7 +32,7 @@ React如此快速是因为它从不直接操作DOM。React维持了一个快速
var MyComponent = React.createClass({ var MyComponent = React.createClass({
handleClick: function() { handleClick: function() {
// 明确的强制text input使用原生DOM API。 // 明确的强制text input使用原生DOM API。
React.findDOMNode(this.refs.myTextInput).focus(); ReactDOM.findDOMNode(this.refs.myTextInput).focus();
}, },
render: function() { render: function() {
// 当组件被挂载时 // 当组件被挂载时
@ -50,7 +50,7 @@ var MyComponent = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<MyComponent />, <MyComponent />,
document.getElementById('example') document.getElementById('example')
); );

6
docs/08.1-more-about-ref-zh-CN.md

@ -83,7 +83,7 @@ React 假设你可以向任何的从`render()` 中返回的组件附加一个特
this.refs.myInput this.refs.myInput
``` ```
通过调用`React.findDOMNode(this.refs.myInput)` 你可以直接方法这个组建的DOM。 通过调用`this.refs.myInput` 你可以直接方法这个组建的DOM。
## ref 回调属性 ## ref 回调属性
@ -132,7 +132,7 @@ React 假设你可以向任何的从`render()` 中返回的组件附加一个特
// 清空input // 清空input
this.setState({userInput: ''}, function() { this.setState({userInput: ''}, function() {
// 当这个组件被再次渲染之后,这个代码执行 // 当这个组件被再次渲染之后,这个代码执行
React.findDOMNode(this.refs.theInput).focus(); //获取焦点了! this.refs.theInput.focus(); //获取焦点了!
}); });
}, },
render: function() { render: function() {
@ -163,7 +163,7 @@ React 假设你可以向任何的从`render()` 中返回的组件附加一个特
- 在你的组件类中你可以定义任意的公开方法(例如在一个Typeahead定义一个reset方法),然后通过refs来调用这些方法(像这样`this.refs.myTypeahead.reset()`)。 - 在你的组件类中你可以定义任意的公开方法(例如在一个Typeahead定义一个reset方法),然后通过refs来调用这些方法(像这样`this.refs.myTypeahead.reset()`)。
- 执行 DOM操作,总是要求诸如`<input />` 这样的一个“原生”组件,并通过`React.findDOMNode(this.refs.myInput)` 来访问她的低层的MOD 节点。Refs是可以做成这个事的唯一的实践可行的方法。 - 执行 DOM操作,总是要求诸如`<input />` 这样的一个“原生”组件,并通过`this.refs.myInput` 来访问她的低层的MOD 节点。Refs是可以做成这个事的唯一的实践可行的方法。
- Refs自动管理!如果孩子被销毁了,它的ref也被销毁。在这里不用担心内存(除非你做了一些疯狂的事情来自己保持一个引用)。 - Refs自动管理!如果孩子被销毁了,它的ref也被销毁。在这里不用担心内存(除非你做了一些疯狂的事情来自己保持一个引用)。

18
docs/08.1-more-about-refs.it-IT.md

@ -9,13 +9,13 @@ Dopo aver costruito il tuo componente, potresti trovarti nella situazione di vol
Vediamo come ottenere un ref, e quindi passiamo ad un esempio completo. Vediamo come ottenere un ref, e quindi passiamo ad un esempio completo.
## Il ref restituito da React.render ## Il ref restituito da ReactDOM.render
Da non confondersi con il metodo `render()` che definisci sul tuo componente (il quale restituisce un elemento DOM virtuale), [React.render()](/react/docs/top-level-api-it-IT.html#react.render) restituisce un riferimento all'**istanza di supporto** del tuo componente (o `null` per i [componenti privi di stato](/react/docs/reusable-components.html#stateless-functions)). Da non confondersi con il metodo `render()` che definisci sul tuo componente (il quale restituisce un elemento DOM virtuale), [ReactDOM.render()](/react/docs/top-level-api-it-IT.html#reactdom.render) restituisce un riferimento all'**istanza di supporto** del tuo componente (o `null` per i [componenti privi di stato](/react/docs/reusable-components.html#stateless-functions)).
```js ```js
var myComponent = React.render(<MyComponent />, myContainer); var myComponent = ReactDOM.render(<MyComponent />, myContainer);
``` ```
Tieni a mente, tuttavia, che JSX non restituisce un'istanza di un componente! È solo un **ReactElement**: una rappresentazione leggera che istruisce React su come il componente montato debba apparire. Tieni a mente, tuttavia, che JSX non restituisce un'istanza di un componente! È solo un **ReactElement**: una rappresentazione leggera che istruisce React su come il componente montato debba apparire.
@ -25,7 +25,7 @@ var myComponentElement = <MyComponent />; // Questo è un semplice ReactElement.
// Qui va del codice... // Qui va del codice...
var myComponentInstance = React.render(myComponentElement, myContainer); var myComponentInstance = ReactDOM.render(myComponentElement, myContainer);
myComponentInstance.doSomething(); myComponentInstance.doSomething();
``` ```
@ -66,7 +66,7 @@ oppure usando una funzione freccia ES6:
Nota che quando il componente referenziato viene smontato e quando il valore di ref cambia, ref sarà chiamata con `null` come argomento. Ciò impedisce i memory leak nel caso in cui l'istanza venga conservata, come nel primo esempio. Nota che quando assegni il valore di ref a un'espressione di funzione in linea come negli esempi precedenti, React vede un oggetto funzione diverso ogni volta e pertanto in occasione di ciascun aggiornamento, ref verrà chiamata con `null` immediatamente prima di essere chiamata con l'istanza del componente. Nota che quando il componente referenziato viene smontato e quando il valore di ref cambia, ref sarà chiamata con `null` come argomento. Ciò impedisce i memory leak nel caso in cui l'istanza venga conservata, come nel primo esempio. Nota che quando assegni il valore di ref a un'espressione di funzione in linea come negli esempi precedenti, React vede un oggetto funzione diverso ogni volta e pertanto in occasione di ciascun aggiornamento, ref verrà chiamata con `null` immediatamente prima di essere chiamata con l'istanza del componente.
Puoi accedere al nodo DOM del componente direttamente chiamando `React.findDOMNode(argomentoDellaTuaCallback)`. Puoi accedere al nodo DOM del componente direttamente chiamando `ReactDOM.findDOMNode(argomentoDellaTuaCallback)`.
## L'Attributo ref Come Stringa ## L'Attributo ref Come Stringa
@ -85,7 +85,7 @@ React supporta anche l'uso di una stringa (anziché una callback) come propriet
this.refs.myInput this.refs.myInput
``` ```
Puoi accedere direttamente al nodo DOM del componente chiamando `React.findDOMNode(this.refs.myInput)`. Puoi accedere direttamente al nodo DOM del componente chiamando `ReactDOM.findDOMNode(this.refs.myInput)`.
## Un Esempio Completo ## Un Esempio Completo
@ -113,7 +113,7 @@ var MyComponent = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<MyComponent />, <MyComponent />,
document.getElementById('example') document.getElementById('example')
); );
@ -121,7 +121,7 @@ React.render(
In questo esempio, otteniamo un riferimento all'**istanza di supporto** del campo di testo e vi invochiamo il metodo `focus()` quando il bottone viene cliccato. In questo esempio, otteniamo un riferimento all'**istanza di supporto** del campo di testo e vi invochiamo il metodo `focus()` quando il bottone viene cliccato.
Per componenti compositi, il riferimento si riferisce a un'istanza della classe del componente, quindi puoi invocare ogni metodo definito in tale classe. Se devi accedere al nodo DOM sottostante per il componente, puoi usare [React.findDOMNode](/react/docs/top-level-api-it-IT.html#react.finddomnode). Per componenti compositi, il riferimento si riferisce a un'istanza della classe del componente, quindi puoi invocare ogni metodo definito in tale classe. Se devi accedere al nodo DOM sottostante per il componente, puoi usare [ReactDOM.findDOMNode](/react/docs/top-level-api-it-IT.html#reactdom.finddomnode).
## Riassunto ## Riassunto
@ -130,7 +130,7 @@ I riferimenti `ref` sono la maniera corretta di inviare un messaggio a una preci
### Benefici: ### Benefici:
- Puoi definire ogni metodo pubblico nelle classi dei tuoi componenti (come un metodo per reimpostare un Typeahead) e chiamare tali metodi pubblici attraverso i riferimenti (come ad esempio `this.refs.myTypeahead.reset()`). - Puoi definire ogni metodo pubblico nelle classi dei tuoi componenti (come un metodo per reimpostare un Typeahead) e chiamare tali metodi pubblici attraverso i riferimenti (come ad esempio `this.refs.myTypeahead.reset()`).
- Effettuare misure sul DOM richiede quasi sempre l'accesso ad un componente "nativo" come `<input />` accedendo il suo nodo DOM sottostante attraverso `React.findDOMNode(this.refs.myInput)`. I riferimenti sono uno degli unici metodi praticabili per fare ciò in maniera affidabile. - Effettuare misure sul DOM richiede quasi sempre l'accesso ad un componente "nativo" come `<input />` accedendo il suo nodo DOM sottostante attraverso `ReactDOM.findDOMNode(this.refs.myInput)`. I riferimenti sono uno degli unici metodi praticabili per fare ciò in maniera affidabile.
- I riferimenti sono gestiti automaticamente per te! Se un figlio è distrutto, anche il suo riferimento è distrutto. Pertanto non preoccuparti del consumo di memoria (a meno che tu non faccia qualcosa di folle per conservare un riferimento). - I riferimenti sono gestiti automaticamente per te! Se un figlio è distrutto, anche il suo riferimento è distrutto. Pertanto non preoccuparti del consumo di memoria (a meno che tu non faccia qualcosa di folle per conservare un riferimento).
### Precauzioni: ### Precauzioni:

8
docs/08.1-more-about-refs.ja-JP.md

@ -81,7 +81,7 @@ Reactは `render()` からの出力であるコンポーネントであれば何
this.refs.myInput this.refs.myInput
``` ```
`React.findDOMNode(this.refs.myInput)` を呼ぶことで、コンポーネントのDOMノードに直接アクセスできる。 `ReactDOM.findDOMNode(this.refs.myInput)` を呼ぶことで、コンポーネントのDOMノードに直接アクセスできる。
## 参照のコールバック属性 ## 参照のコールバック属性
@ -90,7 +90,7 @@ Reactは `render()` からの出力であるコンポーネントであれば何
これは、以下のように、 `render` でリターンされてきたものに `ref` 属性をアサインするのと同じくらい簡単です。 これは、以下のように、 `render` でリターンされてきたものに `ref` 属性をアサインするのと同じくらい簡単です。
```html ```html
<input ref={ function(component){ React.findDOMNode(component).focus();} } /> <input ref={ function(component){ ReactDOM.findDOMNode(component).focus();} } />
``` ```
@ -108,7 +108,7 @@ Reactは `render()` からの出力であるコンポーネントであれば何
// inputをクリアする // inputをクリアする
this.setState({userInput: ''}, function() { this.setState({userInput: ''}, function() {
// このコードはコンポーネントが再度レンダリングされた後に実行されます。 // このコードはコンポーネントが再度レンダリングされた後に実行されます。
React.findDOMNode(this.refs.theInput).focus(); // どーん!フォーカスされました! ReactDOM.findDOMNode(this.refs.theInput).focus(); // どーん!フォーカスされました!
}); });
}, },
render: function() { render: function() {
@ -137,7 +137,7 @@ Reactは `render()` からの出力であるコンポーネントであれば何
### 利益: ### 利益:
- コンポーネントクラス(例えば、Typeaheadのリセットメソッドのようなもの)にパブリックなメソッドを定義できる。また、参照(例えば、 `this.refs.myTypeahead.reset()` のように)を通してそれらのパブリックなメソッドを呼べる。 - コンポーネントクラス(例えば、Typeaheadのリセットメソッドのようなもの)にパブリックなメソッドを定義できる。また、参照(例えば、 `this.refs.myTypeahead.reset()` のように)を通してそれらのパブリックなメソッドを呼べる。
- DOMの計測を行うことは大体いつも `<input />` のような「ネイティブの」コンポーネントや `React.findDOMNode(this.refs.myInput)` を通した根本のDOMノードにアクセスすることを必要とします。参照は、こういったことを期待通りに行う唯一の実用的な方法です。 - DOMの計測を行うことは大体いつも `<input />` のような「ネイティブの」コンポーネントや `ReactDOM.findDOMNode(this.refs.myInput)` を通した根本のDOMノードにアクセスすることを必要とします。参照は、こういったことを期待通りに行う唯一の実用的な方法です。
- 参照は自動的に管理されます!もし子要素が削除されたら、その参照もまた削除されます。メモリに関しての心配は要りません(あなた自身が参照を維持するために何かおかしなことを行っていなければ)。 - 参照は自動的に管理されます!もし子要素が削除されたら、その参照もまた削除されます。メモリに関しての心配は要りません(あなた自身が参照を維持するために何かおかしなことを行っていなければ)。
### 警告: ### 警告:

8
docs/08.1-more-about-refs.ko-KR.md

@ -84,7 +84,7 @@ React는 `render()`로 출력된 컴포넌트에 추가할 수 있는 아주 특
this.refs.myInput this.refs.myInput
``` ```
`React.findDOMNode(this.refs.myInput)`를 호출해 컴포넌트의 DOM 노드에 접근할 수 있습니다. `this.refs.myInput`를 호출해 컴포넌트의 DOM 노드에 접근할 수 있습니다.
## ref 콜백 어트리뷰트 ## ref 콜백 어트리뷰트
@ -93,7 +93,7 @@ React는 `render()`로 출력된 컴포넌트에 추가할 수 있는 아주 특
`render`에서 반환한 모든 것에 간단하게 `ref` 어트리뷰트를 할당할 수 있습니다: `render`에서 반환한 모든 것에 간단하게 `ref` 어트리뷰트를 할당할 수 있습니다:
```html ```html
<input ref={ function(component){ React.findDOMNode(component).focus();} } /> <input ref={ function(component){component.focus();} } />
``` ```
## 예제 완성하기 ## 예제 완성하기
@ -110,7 +110,7 @@ React는 `render()`로 출력된 컴포넌트에 추가할 수 있는 아주 특
// input을 비워준다 // input을 비워준다
this.setState({userInput: ''}, function() { this.setState({userInput: ''}, function() {
// 이 코드는 컴포넌트가 다시 렌더 된 다음 실행됩니다 // 이 코드는 컴포넌트가 다시 렌더 된 다음 실행됩니다
React.findDOMNode(this.refs.theInput).focus(); // 짠! 포커스 됨! this.refs.theInput.focus(); // 짠! 포커스 됨!
}); });
}, },
render: function() { render: function() {
@ -140,7 +140,7 @@ Refs는 반응적인 `props`와 `state` 스트리밍을 통해서는 불편했
### 이점: ### 이점:
- 컴포넌트 클래스에 public 메소드(ex. Typeahead의 reset)를 선언할 수 있으며 refs를 통해 그를 호출할 수 있습니다. (ex. `this.refs.myTypeahead.reset()`) - 컴포넌트 클래스에 public 메소드(ex. Typeahead의 reset)를 선언할 수 있으며 refs를 통해 그를 호출할 수 있습니다. (ex. `this.refs.myTypeahead.reset()`)
- DOM을 측정하기 위해서는 거의 항상 `<input />` 같은 "기본" 컴포넌트를 다루고 `React.findDOMNode(this.refs.myInput)`를 통해 그 기저의 DOM 노드에 접근해야 합니다. Refs는 이 일을 확실하게 수행하는 몇 안 되는 실용적인 방법의 하나입니다. - DOM을 측정하기 위해서는 거의 항상 `<input />` 같은 "기본" 컴포넌트를 다루고 `this.refs.myInput`를 통해 그 기저의 DOM 노드에 접근해야 합니다. Refs는 이 일을 확실하게 수행하는 몇 안 되는 실용적인 방법의 하나입니다.
- Refs는 자동으로 관리합니다! 자식이 파괴되면, 그의 ref도 마찬가지로 파괴됩니다. 참조를 유지하기 위해 뭔가 미친 짓을 하지 않는 한, 메모리 걱정은 하지 않아도 됩니다. - Refs는 자동으로 관리합니다! 자식이 파괴되면, 그의 ref도 마찬가지로 파괴됩니다. 참조를 유지하기 위해 뭔가 미친 짓을 하지 않는 한, 메모리 걱정은 하지 않아도 됩니다.
### 주의: ### 주의:

18
docs/08.1-more-about-refs.md

@ -9,13 +9,13 @@ After building your component, you may find yourself wanting to "reach out" and
Let's look at how to get a ref, and then dive into a complete example. Let's look at how to get a ref, and then dive into a complete example.
## The ref returned from React.render ## The ref returned from ReactDOM.render
Not to be confused with the `render()` function that you define on your component (and which returns a virtual DOM element), [React.render()](/react/docs/top-level-api.html#react.render) will return a reference to your component's **backing instance** (or `null` for [stateless components](/react/docs/reusable-components.html#stateless-functions)). Not to be confused with the `render()` function that you define on your component (and which returns a virtual DOM element), [ReactDOM.render()](/react/docs/top-level-api.html#reactdom.render) will return a reference to your component's **backing instance** (or `null` for [stateless components](/react/docs/reusable-components.html#stateless-functions)).
```js ```js
var myComponent = React.render(<MyComponent />, myContainer); var myComponent = ReactDOM.render(<MyComponent />, myContainer);
``` ```
Keep in mind, however, that the JSX doesn't return a component instance! It's just a **ReactElement**: a lightweight representation that tells React what the mounted component should look like. Keep in mind, however, that the JSX doesn't return a component instance! It's just a **ReactElement**: a lightweight representation that tells React what the mounted component should look like.
@ -25,7 +25,7 @@ var myComponentElement = <MyComponent />; // This is just a ReactElement.
// Some code here... // Some code here...
var myComponentInstance = React.render(myComponentElement, myContainer); var myComponentInstance = ReactDOM.render(myComponentElement, myContainer);
myComponentInstance.doSomething(); myComponentInstance.doSomething();
``` ```
@ -65,7 +65,7 @@ or using an ES6 arrow function:
Note that when the referenced component is unmounted and whenever the ref changes, the old ref will be called with `null` as an argument. This prevents memory leaks in the case that the instance is stored, as in the first example. Also note that when writing refs with inline function expressions as in the examples here, React sees a different function object each time so on every update, ref will be called with `null` immediately before it's called with the component instance. Note that when the referenced component is unmounted and whenever the ref changes, the old ref will be called with `null` as an argument. This prevents memory leaks in the case that the instance is stored, as in the first example. Also note that when writing refs with inline function expressions as in the examples here, React sees a different function object each time so on every update, ref will be called with `null` immediately before it's called with the component instance.
You can access the component's DOM node directly by calling `React.findDOMNode(argumentToYourCallback)`. You can access the component's DOM node directly by calling `ReactDOM.findDOMNode(argumentToYourCallback)`.
## The ref String Attribute ## The ref String Attribute
@ -84,7 +84,7 @@ React also supports using a string (instead of a callback) as a ref prop on any
this.refs.myInput this.refs.myInput
``` ```
You can access the component's DOM node directly by calling `React.findDOMNode(this.refs.myInput)`. You can access the component's DOM node directly by calling `ReactDOM.findDOMNode(this.refs.myInput)`.
## A Complete Example ## A Complete Example
@ -112,7 +112,7 @@ var MyComponent = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<MyComponent />, <MyComponent />,
document.getElementById('example') document.getElementById('example')
); );
@ -120,7 +120,7 @@ React.render(
In this example, we get a reference to the text input **backing instance** and we call `focus()` when the button is clicked. In this example, we get a reference to the text input **backing instance** and we call `focus()` when the button is clicked.
For composite components, the reference will refer to an instance of the component class so you can invoke any methods that are defined on that class. If you need access to the underlying DOM node for that component, you can use [React.findDOMNode](/react/docs/top-level-api.html#react.finddomnode). For composite components, the reference will refer to an instance of the component class so you can invoke any methods that are defined on that class. If you need access to the underlying DOM node for that component, you can use [ReactDOM.findDOMNode](/react/docs/top-level-api.html#reactdom.finddomnode).
## Summary ## Summary
@ -129,7 +129,7 @@ Refs are a great way to send a message to a particular child instance in a way t
### Benefits: ### Benefits:
- You can define any public method on your component classes (such as a reset method on a Typeahead) and call those public methods through refs (such as `this.refs.myTypeahead.reset()`). - You can define any public method on your component classes (such as a reset method on a Typeahead) and call those public methods through refs (such as `this.refs.myTypeahead.reset()`).
- Performing DOM measurements almost always requires reaching out to a "native" component such as `<input />` and accessing its underlying DOM node via `React.findDOMNode(this.refs.myInput)`. Refs are one of the only practical ways of doing this reliably. - Performing DOM measurements almost always requires reaching out to a "native" component such as `<input />` and accessing its underlying DOM node via `ReactDOM.findDOMNode(this.refs.myInput)`. Refs are one of the only practical ways of doing this reliably.
- Refs are automatically managed for you! If that child is destroyed, its ref is also destroyed for you. No worrying about memory here (unless you do something crazy to retain a reference yourself). - Refs are automatically managed for you! If that child is destroyed, its ref is also destroyed for you. No worrying about memory here (unless you do something crazy to retain a reference yourself).
### Cautions: ### Cautions:

6
docs/08.1-more-about-refs.zh-CN.md

@ -83,7 +83,7 @@ React支持一种非常特殊的属性,你可以附加到任何从`render()`
this.refs.myInput this.refs.myInput
``` ```
你可以直接通过调用`React.findDOMNode(this.refs.myInput)` 访问组件的DOM node。 你可以直接通过调用`ReactDOM.findDOMNode(this.refs.myInput)` 访问组件的DOM node。
## ref 回调属性 ## ref 回调属性
@ -133,7 +133,7 @@ React支持一种非常特殊的属性,你可以附加到任何从`render()`
// Clear the input // Clear the input
this.setState({userInput: ''}, function() { this.setState({userInput: ''}, function() {
// This code executes after the component is re-rendered // This code executes after the component is re-rendered
React.findDOMNode(this.refs.theInput).focus(); // Boom! Focused! ReactDOM.findDOMNode(this.refs.theInput).focus(); // Boom! Focused!
}); });
}, },
render: function() { render: function() {
@ -163,7 +163,7 @@ Refs是一种很好的发送消息给特定子实例(通过流式的Reactive `pr
### 优点: ### 优点:
- 你可以在你的组件类里定义任何的公开方法(比如在一个Typeahead的重置方法)然后通过refs调用那些公开方法(比如`this.refs.myTypeahead.reset()`)。 - 你可以在你的组件类里定义任何的公开方法(比如在一个Typeahead的重置方法)然后通过refs调用那些公开方法(比如`this.refs.myTypeahead.reset()`)。
- 实行DOM测量几乎总是需要接触到"原生" 组件比如 `<input />` 并且`React.findDOMNode(this.refs.myInput)`通过访问它的底层DOM 节点。 Refs 是唯一一个可靠的完成这件事的实际方式。 - 实行DOM测量几乎总是需要接触到"原生" 组件比如 `<input />` 并且`ReactDOM.findDOMNode(this.refs.myInput)`通过访问它的底层DOM 节点。 Refs 是唯一一个可靠的完成这件事的实际方式。
- Refs 是为你自动管理的!如果子级被销毁了,它的ref也同样为你销毁了。这里不用担心内存(除非你做了一些疯狂的事情来自己保持一份引用)。 - Refs 是为你自动管理的!如果子级被销毁了,它的ref也同样为你销毁了。这里不用担心内存(除非你做了一些疯狂的事情来自己保持一份引用)。
### 注意事项: ### 注意事项:

4
docs/09-tooling-integration.it-IT.md

@ -48,7 +48,7 @@ var HelloMessage = React.createClass({
} }
}); });
React.render(<HelloMessage name="John" />, mountNode); ReactDOM.render(<HelloMessage name="John" />, mountNode);
$ babel test.jsx $ babel test.jsx
"use strict"; "use strict";
@ -65,7 +65,7 @@ var HelloMessage = React.createClass({
} }
}); });
React.render(React.createElement(HelloMessage, { name: "John" }), mountNode); ReactDOM.render(React.createElement(HelloMessage, { name: "John" }), mountNode);
``` ```

4
docs/09-tooling-integration.md

@ -48,7 +48,7 @@ var HelloMessage = React.createClass({
} }
}); });
React.render(<HelloMessage name="John" />, mountNode); ReactDOM.render(<HelloMessage name="John" />, mountNode);
$ babel test.jsx $ babel test.jsx
"use strict"; "use strict";
@ -65,7 +65,7 @@ var HelloMessage = React.createClass({
} }
}); });
React.render(React.createElement(HelloMessage, { name: "John" }), mountNode); ReactDOM.render(React.createElement(HelloMessage, { name: "John" }), mountNode);
``` ```

4
docs/09-tooling-integration.zh-CN.md

@ -48,7 +48,7 @@ var HelloMessage = React.createClass({
} }
}); });
React.render(<HelloMessage name="John" />, mountNode); ReactDOM.render(<HelloMessage name="John" />, mountNode);
$ babel test.jsx $ babel test.jsx
"use strict"; "use strict";
@ -65,7 +65,7 @@ var HelloMessage = React.createClass({
} }
}); });
React.render(React.createElement(HelloMessage, { name: "John" }), mountNode); ReactDOM.render(React.createElement(HelloMessage, { name: "John" }), mountNode);
``` ```

6
docs/10.4-test-utils.it-IT.md

@ -22,14 +22,14 @@ Simula l'inoltro di un evento su un nodo DOM con dei dati dell'evento opzionali
**Cliccare un elemento** **Cliccare un elemento**
```javascript ```javascript
var node = React.findDOMNode(this.refs.button); var node = ReactDOM.findDOMNode(this.refs.button);
React.addons.TestUtils.Simulate.click(node); React.addons.TestUtils.Simulate.click(node);
``` ```
**Cambiare il valore di un campo di input e in seguito premere INVIO** **Cambiare il valore di un campo di input e in seguito premere INVIO**
```javascript ```javascript
var node = React.findDOMNode(this.refs.input); var node = ReactDOM.findDOMNode(this.refs.input);
node.value = 'giraffe' node.value = 'giraffe'
React.addons.TestUtils.Simulate.change(node); React.addons.TestUtils.Simulate.change(node);
React.addons.TestUtils.Simulate.keyDown(node, {key: "Enter", keyCode: 13, which: 13}); React.addons.TestUtils.Simulate.keyDown(node, {key: "Enter", keyCode: 13, which: 13});
@ -204,7 +204,7 @@ shallowRenderer.render(
) )
``` ```
Simile a `React.render`. Simile a `ReactDOM.render`.
```javascript ```javascript
ReactComponent shallowRenderer.getRenderOutput() ReactComponent shallowRenderer.getRenderOutput()

4
docs/10.4-test-utils.ja-JP.md

@ -19,7 +19,7 @@ Simulate.{eventName}(DOMElement element, object eventData)
使用例: 使用例:
```javascript ```javascript
var node = React.findDOMNode(this.refs.input); var node = ReactDOM.findDOMNode(this.refs.input);
React.addons.TestUtils.Simulate.click(node); React.addons.TestUtils.Simulate.click(node);
React.addons.TestUtils.Simulate.change(node, {target: {value: 'Hello, world'}}); React.addons.TestUtils.Simulate.change(node, {target: {value: 'Hello, world'}});
React.addons.TestUtils.Simulate.keyDown(node, {key: "Enter"}); React.addons.TestUtils.Simulate.keyDown(node, {key: "Enter"});
@ -154,7 +154,7 @@ ReactShallowRenderer createRenderer()
shallowRenderer.render(ReactElement element) shallowRenderer.render(ReactElement element)
``` ```
`React.render` に同様。 `ReactDOM.render` に同様。
```javascript ```javascript
ReactComponent shallowRenderer.getRenderOutput() ReactComponent shallowRenderer.getRenderOutput()

4
docs/10.4-test-utils.ko-KR.md

@ -19,7 +19,7 @@ DOM 노드에 이벤트 디스패치하는 것을 시뮬레이트합니다. 선
사용 예: 사용 예:
```javascript ```javascript
var node = React.findDOMNode(this.refs.input); var node = ReactDOM.findDOMNode(this.refs.input);
React.addons.TestUtils.Simulate.click(node); React.addons.TestUtils.Simulate.click(node);
React.addons.TestUtils.Simulate.change(node, {target: {value: 'Hello, world'}}); React.addons.TestUtils.Simulate.change(node, {target: {value: 'Hello, world'}});
React.addons.TestUtils.Simulate.keyDown(node, {key: "Enter"}); React.addons.TestUtils.Simulate.keyDown(node, {key: "Enter"});
@ -152,7 +152,7 @@ ReactShallowRenderer createRenderer()
shallowRenderer.render(ReactElement element) shallowRenderer.render(ReactElement element)
``` ```
`React.render`와 유사합니다. `ReactDOM.render`와 유사합니다.
```javascript ```javascript
ReactComponent shallowRenderer.getRenderOutput() ReactComponent shallowRenderer.getRenderOutput()

6
docs/10.4-test-utils.md

@ -22,14 +22,14 @@ Simulate an event dispatch on a DOM node with optional `eventData` event data. *
**Clicking an element** **Clicking an element**
```javascript ```javascript
var node = React.findDOMNode(this.refs.button); var node = ReactDOM.findDOMNode(this.refs.button);
React.addons.TestUtils.Simulate.click(node); React.addons.TestUtils.Simulate.click(node);
``` ```
**Changing the value of an input field and then pressing ENTER** **Changing the value of an input field and then pressing ENTER**
```javascript ```javascript
var node = React.findDOMNode(this.refs.input); var node = ReactDOM.findDOMNode(this.refs.input);
node.value = 'giraffe' node.value = 'giraffe'
React.addons.TestUtils.Simulate.change(node); React.addons.TestUtils.Simulate.change(node);
React.addons.TestUtils.Simulate.keyDown(node, {key: "Enter", keyCode: 13, which: 13}); React.addons.TestUtils.Simulate.keyDown(node, {key: "Enter", keyCode: 13, which: 13});
@ -209,7 +209,7 @@ shallowRenderer.render(
) )
``` ```
Similar to `React.render`. Similar to `ReactDOM.render`.
```javascript ```javascript
ReactComponent shallowRenderer.getRenderOutput() ReactComponent shallowRenderer.getRenderOutput()

2
docs/10.5-clone-with-props.it-IT.md

@ -23,7 +23,7 @@ var Blue = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Blue> <Blue>
<p>Questo testo è blu.</p> <p>Questo testo è blu.</p>
</Blue>, </Blue>,

2
docs/10.5-clone-with-props.ja-JP.md

@ -23,7 +23,7 @@ var Blue = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Blue> <Blue>
<p>This text is blue.</p> <p>This text is blue.</p>
</Blue>, </Blue>,

2
docs/10.5-clone-with-props.ko-KR.md

@ -23,7 +23,7 @@ var Blue = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Blue> <Blue>
<p>This text is blue.</p> <p>This text is blue.</p>
</Blue>, </Blue>,

2
docs/10.5-clone-with-props.md

@ -23,7 +23,7 @@ var Blue = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<Blue> <Blue>
<p>This text is blue.</p> <p>This text is blue.</p>
</Blue>, </Blue>,

6
docs/getting-started.it-IT.md

@ -37,7 +37,7 @@ Nella directory principale dello starter kit, crea `helloworld.html` con il segu
<body> <body>
<div id="example"></div> <div id="example"></div>
<script type="text/babel"> <script type="text/babel">
React.render( ReactDOM.render(
<h1>Cial, mondo!</h1>, <h1>Cial, mondo!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -53,7 +53,7 @@ La sintassi XML all'interno di JavaScript è chiamata JSX; dài un'occhiata alla
Il tuo codice React JSX può trovarsi in un file a parte. Crea il seguente `src/helloworld.js`. Il tuo codice React JSX può trovarsi in un file a parte. Crea il seguente `src/helloworld.js`.
```javascript ```javascript
React.render( ReactDOM.render(
<h1>Ciao, mondo!</h1>, <h1>Ciao, mondo!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -85,7 +85,7 @@ babel src --watch --out-dir build
Il file `build/helloworld.js` è generato automaticamente ogni qualvolta effettui un cambiamento. Leggi la [documentazione di Babel CLI](http://babeljs.io/docs/usage/cli/) per un uso più avanzato. Il file `build/helloworld.js` è generato automaticamente ogni qualvolta effettui un cambiamento. Leggi la [documentazione di Babel CLI](http://babeljs.io/docs/usage/cli/) per un uso più avanzato.
```javascript{2} ```javascript{2}
React.render( ReactDOM.render(
React.createElement('h1', null, 'Ciao, mondo!'), React.createElement('h1', null, 'Ciao, mondo!'),
document.getElementById('example') document.getElementById('example')
); );

6
docs/getting-started.ja-JP.md

@ -37,7 +37,7 @@ React でのハッキングを始めるにあたり、一番簡単なものと
<body> <body>
<div id="example"></div> <div id="example"></div>
<script type="text/babel"> <script type="text/babel">
React.render( ReactDOM.render(
<h1>Hello, world!</h1>, <h1>Hello, world!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -53,7 +53,7 @@ JavaScript の中に書かれた XML シンタックスは JSX と呼ばれる
React の JSX コードは別ファイルに分離することができます。 次のような `src/helloworld.js` を作ってみましょう。 React の JSX コードは別ファイルに分離することができます。 次のような `src/helloworld.js` を作ってみましょう。
```javascript ```javascript
React.render( ReactDOM.render(
<h1>Hello, world!</h1>, <h1>Hello, world!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -83,7 +83,7 @@ jsx --watch src/ build/
すると、`src/helloword.js` に変更を加えるごとに `build/helloworld.js` が自動で生成されるようになります。 すると、`src/helloword.js` に変更を加えるごとに `build/helloworld.js` が自動で生成されるようになります。
```javascript{2} ```javascript{2}
React.render( ReactDOM.render(
React.createElement('h1', null, 'Hello, world!'), React.createElement('h1', null, 'Hello, world!'),
document.getElementById('example') document.getElementById('example')
); );

6
docs/getting-started.ko-KR.md

@ -37,7 +37,7 @@ React를 시작하는 가장 빠른 방법은 다음의 Hello World JSFiddle 예
<body> <body>
<div id="example"></div> <div id="example"></div>
<script type="text/babel"> <script type="text/babel">
React.render( ReactDOM.render(
<h1>Hello, world!</h1>, <h1>Hello, world!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -53,7 +53,7 @@ JavaScript 안에 보이는 XML 구문은 JSX라고 합니다; 더 자세한 내
React JSX 코드는 분리된 파일로 존재할 수 있습니다. 다음 내용으로 `src/helloworld.js`를 생성해보세요. React JSX 코드는 분리된 파일로 존재할 수 있습니다. 다음 내용으로 `src/helloworld.js`를 생성해보세요.
```javascript ```javascript
React.render( ReactDOM.render(
<h1>Hello, world!</h1>, <h1>Hello, world!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -84,7 +84,7 @@ jsx --watch src/ build/
수정할 때마다 `build/helloworld.js` 파일이 자동생성됩니다. 수정할 때마다 `build/helloworld.js` 파일이 자동생성됩니다.
```javascript{2} ```javascript{2}
React.render( ReactDOM.render(
React.createElement('h1', null, 'Hello, world!'), React.createElement('h1', null, 'Hello, world!'),
document.getElementById('example') document.getElementById('example')
); );

6
docs/getting-started.md

@ -36,7 +36,7 @@ In the root directory of the starter kit, create a `helloworld.html` with the fo
<body> <body>
<div id="example"></div> <div id="example"></div>
<script type="text/babel"> <script type="text/babel">
React.render( ReactDOM.render(
<h1>Hello, world!</h1>, <h1>Hello, world!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -52,7 +52,7 @@ The XML syntax inside of JavaScript is called JSX; check out the [JSX syntax](/r
Your React JSX code can live in a separate file. Create the following `src/helloworld.js`. Your React JSX code can live in a separate file. Create the following `src/helloworld.js`.
```javascript ```javascript
React.render( ReactDOM.render(
<h1>Hello, world!</h1>, <h1>Hello, world!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -84,7 +84,7 @@ babel src --watch --out-dir build
The file `build/helloworld.js` is autogenerated whenever you make a change. Read the [Babel CLI documentation](http://babeljs.io/docs/usage/cli/) for more advanced usage. The file `build/helloworld.js` is autogenerated whenever you make a change. Read the [Babel CLI documentation](http://babeljs.io/docs/usage/cli/) for more advanced usage.
```javascript{2} ```javascript{2}
React.render( ReactDOM.render(
React.createElement('h1', null, 'Hello, world!'), React.createElement('h1', null, 'Hello, world!'),
document.getElementById('example') document.getElementById('example')
); );

6
docs/getting-started.zh-CN.md

@ -37,7 +37,7 @@ redirect_from: "docs/index-zh-CN.html"
<body> <body>
<div id="example"></div> <div id="example"></div>
<script type="text/babel"> <script type="text/babel">
React.render( ReactDOM.render(
<h1>Hello, world!</h1>, <h1>Hello, world!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -53,7 +53,7 @@ redirect_from: "docs/index-zh-CN.html"
你的 React JSX 代码文件可以写在另外的文件里。新建下面的 `src/helloworld.js` 你的 React JSX 代码文件可以写在另外的文件里。新建下面的 `src/helloworld.js`
```javascript ```javascript
React.render( ReactDOM.render(
<h1>Hello, world!</h1>, <h1>Hello, world!</h1>,
document.getElementById('example') document.getElementById('example')
); );
@ -83,7 +83,7 @@ jsx --watch src/ build/
只要你修改了, `build/helloworld.js` 文件会自动生成。 只要你修改了, `build/helloworld.js` 文件会自动生成。
```javascript{2} ```javascript{2}
React.render( ReactDOM.render(
React.createElement('h1', null, 'Hello, world!'), React.createElement('h1', null, 'Hello, world!'),
document.getElementById('example') document.getElementById('example')
); );

18
docs/ref-01-top-level-api.it-IT.md

@ -70,7 +70,7 @@ l'argomento `type` può essere sia la stringa contenente il nome di un tag HTML
`ReactClass`. `ReactClass`.
### React.render ### ReactDOM.render
```javascript ```javascript
ReactComponent render( ReactComponent render(
@ -88,15 +88,15 @@ Se la callback opzionale è fornita, sarà eseguita dopo che il rendering o l'ag
> Nota: > Nota:
> >
> `React.render()` controlla i contenuti del nodo contenitore che viene passato come argomento `container`. Gli elementi DOM > `ReactDOM.render()` controlla i contenuti del nodo contenitore che viene passato come argomento `container`. Gli elementi DOM
> esistenti al suo interno sono sostituiti quando viene chiamata la prima volta. Le chiamate successive usano l'algoritmo di > esistenti al suo interno sono sostituiti quando viene chiamata la prima volta. Le chiamate successive usano l'algoritmo di
> differenza di React per aggiornamenti efficienti. > differenza di React per aggiornamenti efficienti.
> >
> `React.render()` non modifica il nodo contenitore (modifica soltanto i figli del contenitore). In > `ReactDOM.render()` non modifica il nodo contenitore (modifica soltanto i figli del contenitore). In
> futuro potrebbe essere possibile inserire un componente in un nodo DOM esistente senza sovrascrivere i figli esistenti. > futuro potrebbe essere possibile inserire un componente in un nodo DOM esistente senza sovrascrivere i figli esistenti.
### React.unmountComponentAtNode ### ReactDOM.unmountComponentAtNode
```javascript ```javascript
boolean unmountComponentAtNode(DOMElement container) boolean unmountComponentAtNode(DOMElement container)
@ -105,7 +105,7 @@ boolean unmountComponentAtNode(DOMElement container)
Rimuove un componente React montato nel DOM e ripulisce i suoi gestori di evento e lo stato. Se nessun componente è stato montato nel contenitore `container`, chiamare questa funzione non ha alcun effetto. Restituisce `true` se il componente è stato smontato e `false` se non è stato trovato un componente da smontare. Rimuove un componente React montato nel DOM e ripulisce i suoi gestori di evento e lo stato. Se nessun componente è stato montato nel contenitore `container`, chiamare questa funzione non ha alcun effetto. Restituisce `true` se il componente è stato smontato e `false` se non è stato trovato un componente da smontare.
### React.renderToString ### ReactDOM.renderToString
```javascript ```javascript
string renderToString(ReactElement element) string renderToString(ReactElement element)
@ -113,10 +113,10 @@ string renderToString(ReactElement element)
Effettua il rendering di un ReactElement come il suo HTML iniziale. Questo dovrebe essere utilizzato soltanto lato server. React restituirà una stringa di HTML. Puoi usare questo metodo per generare HTML sul server e inviare il markup come risposta alla richiesta iniziale per un più rapido caricamento della pagina, e permettere ai motori di ricerca di effettuare il crawling della tua pagina per ottimizzazione SEO. Effettua il rendering di un ReactElement come il suo HTML iniziale. Questo dovrebe essere utilizzato soltanto lato server. React restituirà una stringa di HTML. Puoi usare questo metodo per generare HTML sul server e inviare il markup come risposta alla richiesta iniziale per un più rapido caricamento della pagina, e permettere ai motori di ricerca di effettuare il crawling della tua pagina per ottimizzazione SEO.
Se chiami `React.render()` su un nodo che possiede già questo markup generato lato server, React lo preserverà e vi attaccherà soltanto i gestori di eventi, permettendoti di avere una esperienza di primo caricamento altamente efficiente. Se chiami `ReactDOM.render()` su un nodo che possiede già questo markup generato lato server, React lo preserverà e vi attaccherà soltanto i gestori di eventi, permettendoti di avere una esperienza di primo caricamento altamente efficiente.
### React.renderToStaticMarkup ### ReactDOM.renderToStaticMarkup
```javascript ```javascript
string renderToStaticMarkup(ReactElement element) string renderToStaticMarkup(ReactElement element)
@ -125,7 +125,7 @@ string renderToStaticMarkup(ReactElement element)
Simile a `renderToString`, eccetto che non crea attributi DOM aggiuntivi come `data-react-id`, che React utilizza internamente. Questo è utile se vuoi usare React come un semplice generatore di pagine statiche, in quanto eliminare gli attributi aggiuntivi può risparmiare parecchi byte. Simile a `renderToString`, eccetto che non crea attributi DOM aggiuntivi come `data-react-id`, che React utilizza internamente. Questo è utile se vuoi usare React come un semplice generatore di pagine statiche, in quanto eliminare gli attributi aggiuntivi può risparmiare parecchi byte.
### React.isValidElement ### ReactDOM.isValidElement
```javascript ```javascript
boolean isValidElement(* object) boolean isValidElement(* object)
@ -134,7 +134,7 @@ boolean isValidElement(* object)
Verifica che `object` sia un ReactElement. Verifica che `object` sia un ReactElement.
### React.findDOMNode ### ReactDOM.findDOMNode
```javascript ```javascript
DOMElement findDOMNode(ReactComponent component) DOMElement findDOMNode(ReactComponent component)

18
docs/ref-01-top-level-api.ko-KR.md

@ -68,7 +68,7 @@ factoryFunction createFactory(
주어진 타입의 ReactElement를 만들어주는 함수를 리턴합니다. `React.createElement`와 마찬가지로 `type` 인자는 HTML 태그명 문자열 (예: 'div', 'span' 등) 또는 `ReactClass`입니다. 주어진 타입의 ReactElement를 만들어주는 함수를 리턴합니다. `React.createElement`와 마찬가지로 `type` 인자는 HTML 태그명 문자열 (예: 'div', 'span' 등) 또는 `ReactClass`입니다.
### React.render ### ReactDOM.render
```javascript ```javascript
ReactComponent render( ReactComponent render(
@ -86,12 +86,12 @@ ReactComponent render(
> 주의: > 주의:
> >
> `React.render()`는 넘어온 컨테이너 노드의 내용을 교체합니다. 안에 있는 DOM 엘리먼트는 첫 호출을 할 때 교체됩니다. 그 후의 호출에는 효율석으로 업데이트하기 위해 React의 DOM diff 알고리즘을 사용합니다. > `ReactDOM.render()`는 넘어온 컨테이너 노드의 내용을 교체합니다. 안에 있는 DOM 엘리먼트는 첫 호출을 할 때 교체됩니다. 그 후의 호출에는 효율석으로 업데이트하기 위해 React의 DOM diff 알고리즘을 사용합니다.
> >
> `React.render()`는 컨테이너 노드를 수정하지 않습니다. (컨테이너의 자식만 수정함) 추후에 기존 자식들을 덮어쓰지 않고 이미 있는 DOM 노드에 컴포넌트를 삽입하는 것도 지원할 가능성이 있습니다. > `ReactDOM.render()`는 컨테이너 노드를 수정하지 않습니다. (컨테이너의 자식만 수정함) 추후에 기존 자식들을 덮어쓰지 않고 이미 있는 DOM 노드에 컴포넌트를 삽입하는 것도 지원할 가능성이 있습니다.
### React.unmountComponentAtNode ### ReactDOM.unmountComponentAtNode
```javascript ```javascript
boolean unmountComponentAtNode(DOMElement container) boolean unmountComponentAtNode(DOMElement container)
@ -100,7 +100,7 @@ boolean unmountComponentAtNode(DOMElement container)
DOM에 마운트된 React 컴포넌트를 제거하고 이벤트 핸들러 및 state를 정리합니다. 컨테이너에 마운트된 컴포넌트가 없는 경우에는 호출해도 아무 동작을 하지 않습니다. 컴포넌트가 마운트 해제된 경우 `true`를, 마운트 해제할 컴포넌트가 없으면 `false`를 리턴합니다. DOM에 마운트된 React 컴포넌트를 제거하고 이벤트 핸들러 및 state를 정리합니다. 컨테이너에 마운트된 컴포넌트가 없는 경우에는 호출해도 아무 동작을 하지 않습니다. 컴포넌트가 마운트 해제된 경우 `true`를, 마운트 해제할 컴포넌트가 없으면 `false`를 리턴합니다.
### React.renderToString ### ReactDOM.renderToString
```javascript ```javascript
string renderToString(ReactElement element) string renderToString(ReactElement element)
@ -108,10 +108,10 @@ string renderToString(ReactElement element)
주어진 ReactElement의 최초 HTML을 렌더링합니다. 이 함수는 서버에서만 사용해야 합니다. React가 HTML 문자열을 리턴합니다. HTML을 서버에서 생성하고 마크업을 최초 요청에 내려보내서, 페이지 로딩을 빠르게 하거나 검색 엔진이 크롤링할 수 있도록 하는 SEO 목적으로 이 메소드를 사용할 수 있습니다. 주어진 ReactElement의 최초 HTML을 렌더링합니다. 이 함수는 서버에서만 사용해야 합니다. React가 HTML 문자열을 리턴합니다. HTML을 서버에서 생성하고 마크업을 최초 요청에 내려보내서, 페이지 로딩을 빠르게 하거나 검색 엔진이 크롤링할 수 있도록 하는 SEO 목적으로 이 메소드를 사용할 수 있습니다.
또한 이 메소드로 서버에서 렌더링한 마크업을 포함한 노드에 `React.render()`를 호출하면, React는 마크업을 보존하고 이벤트 핸들러만 붙이므로 최초 로딩을 매우 빠르게 느껴지게 할 수 있습니다. 또한 이 메소드로 서버에서 렌더링한 마크업을 포함한 노드에 `ReactDOM.render()`를 호출하면, React는 마크업을 보존하고 이벤트 핸들러만 붙이므로 최초 로딩을 매우 빠르게 느껴지게 할 수 있습니다.
### React.renderToStaticMarkup ### ReactDOM.renderToStaticMarkup
```javascript ```javascript
string renderToStaticMarkup(ReactElement element) string renderToStaticMarkup(ReactElement element)
@ -120,7 +120,7 @@ string renderToStaticMarkup(ReactElement element)
`renderToString`와 비슷하지만 `data-react-id`처럼 React에서 내부적으로 사용하는 추가적인 DOM 어트리뷰트를 만들지 않습니다. 추가적인 어트리뷰트를 제거하면 생성되는 마크업의 용량을 줄일 수 있기 때문에 React를 단순한 정적 페이지 생성기로 사용할 때 유용합니다. `renderToString`와 비슷하지만 `data-react-id`처럼 React에서 내부적으로 사용하는 추가적인 DOM 어트리뷰트를 만들지 않습니다. 추가적인 어트리뷰트를 제거하면 생성되는 마크업의 용량을 줄일 수 있기 때문에 React를 단순한 정적 페이지 생성기로 사용할 때 유용합니다.
### React.isValidElement ### ReactDOM.isValidElement
```javascript ```javascript
boolean isValidElement(* object) boolean isValidElement(* object)
@ -128,7 +128,7 @@ boolean isValidElement(* object)
주어진 객체가 ReactElement인지 확인합니다. 주어진 객체가 ReactElement인지 확인합니다.
### React.findDOMNode ### ReactDOM.findDOMNode
```javascript ```javascript
DOMElement findDOMNode(ReactComponent component) DOMElement findDOMNode(ReactComponent component)

18
docs/ref-01-top-level-api.md

@ -71,7 +71,7 @@ the type argument can be either an html tag name string (eg. 'div', 'span', etc)
`ReactClass`. `ReactClass`.
### React.render ### ReactDOM.render
```javascript ```javascript
ReactComponent render( ReactComponent render(
@ -89,16 +89,16 @@ If the optional callback is provided, it will be executed after the component is
> Note: > Note:
> >
> `React.render()` controls the contents of the container node you pass in. Any existing DOM elements > `ReactDOM.render()` controls the contents of the container node you pass in. Any existing DOM elements
> inside are replaced when first called. Later calls use React’s DOM diffing algorithm for efficient > inside are replaced when first called. Later calls use React’s DOM diffing algorithm for efficient
> updates. > updates.
> >
> `React.render()` does not modify the container node (only modifies the children of the container). In > `ReactDOM.render()` does not modify the container node (only modifies the children of the container). In
> the future, it may be possible to insert a component to an existing DOM node without overwriting > the future, it may be possible to insert a component to an existing DOM node without overwriting
> the existing children. > the existing children.
### React.unmountComponentAtNode ### ReactDOM.unmountComponentAtNode
```javascript ```javascript
boolean unmountComponentAtNode(DOMElement container) boolean unmountComponentAtNode(DOMElement container)
@ -107,7 +107,7 @@ boolean unmountComponentAtNode(DOMElement container)
Remove a mounted React component from the DOM and clean up its event handlers and state. If no component was mounted in the container, calling this function does nothing. Returns `true` if a component was unmounted and `false` if there was no component to unmount. Remove a mounted React component from the DOM and clean up its event handlers and state. If no component was mounted in the container, calling this function does nothing. Returns `true` if a component was unmounted and `false` if there was no component to unmount.
### React.renderToString ### ReactDOM.renderToString
```javascript ```javascript
string renderToString(ReactElement element) string renderToString(ReactElement element)
@ -115,10 +115,10 @@ string renderToString(ReactElement element)
Render a ReactElement to its initial HTML. This should only be used on the server. React will return an HTML string. You can use this method to generate HTML on the server and send the markup down on the initial request for faster page loads and to allow search engines to crawl your pages for SEO purposes. Render a ReactElement to its initial HTML. This should only be used on the server. React will return an HTML string. You can use this method to generate HTML on the server and send the markup down on the initial request for faster page loads and to allow search engines to crawl your pages for SEO purposes.
If you call `React.render()` on a node that already has this server-rendered markup, React will preserve it and only attach event handlers, allowing you to have a very performant first-load experience. If you call `ReactDOM.render()` on a node that already has this server-rendered markup, React will preserve it and only attach event handlers, allowing you to have a very performant first-load experience.
### React.renderToStaticMarkup ### ReactDOM.renderToStaticMarkup
```javascript ```javascript
string renderToStaticMarkup(ReactElement element) string renderToStaticMarkup(ReactElement element)
@ -127,7 +127,7 @@ string renderToStaticMarkup(ReactElement element)
Similar to `renderToString`, except this doesn't create extra DOM attributes such as `data-react-id`, that React uses internally. This is useful if you want to use React as a simple static page generator, as stripping away the extra attributes can save lots of bytes. Similar to `renderToString`, except this doesn't create extra DOM attributes such as `data-react-id`, that React uses internally. This is useful if you want to use React as a simple static page generator, as stripping away the extra attributes can save lots of bytes.
### React.isValidElement ### ReactDOM.isValidElement
```javascript ```javascript
boolean isValidElement(* object) boolean isValidElement(* object)
@ -136,7 +136,7 @@ boolean isValidElement(* object)
Verifies the object is a ReactElement. Verifies the object is a ReactElement.
### React.findDOMNode ### ReactDOM.findDOMNode
```javascript ```javascript
DOMElement findDOMNode(ReactComponent component) DOMElement findDOMNode(ReactComponent component)

10
docs/ref-02-component-api.it-IT.md

@ -8,7 +8,7 @@ next: component-specs-it-IT.html
## React.Component ## React.Component
Istanze di un React Component sono create internamente a React durante il rendering. Queste istanze sono riutilizzate in rendering successivi, e possono essere accedute dai metodi del tuo componente come `this`. L'unica maniera di ottenere un riferimento a una istanza di un React Component fuori da React è conservare il valore restituito da `React.render`. All'interno di altri Component, puoi utilizzare [i ref](/react/docs/more-about-refs.html) per ottenere il medesimo risultato. Istanze di un React Component sono create internamente a React durante il rendering. Queste istanze sono riutilizzate in rendering successivi, e possono essere accedute dai metodi del tuo componente come `this`. L'unica maniera di ottenere un riferimento a una istanza di un React Component fuori da React è conservare il valore restituito da `ReactDOM.render`. All'interno di altri Component, puoi utilizzare [i ref](/react/docs/more-about-refs.html) per ottenere il medesimo risultato.
### setState ### setState
@ -91,7 +91,7 @@ Se questo componente è stato montato nel DOM, restituisce il corrispondente ele
> Nota: > Nota:
> >
> getDOMNode è deprecato ed è stato sostituito da [React.findDOMNode()](/react/docs/top-level-api.html#react.finddomnode). > getDOMNode è deprecato ed è stato sostituito da [ReactDOM.findDOMNode()](/react/docs/top-level-api.html#reactdom.finddomnode).
> >
> Questo metodo non è disponibile il componenti `class` ES6 che estendono `React.Component`. Potrebbe essere eliminato del tutto in una versione futura di React. > Questo metodo non è disponibile il componenti `class` ES6 che estendono `React.Component`. Potrebbe essere eliminato del tutto in una versione futura di React.
@ -118,15 +118,15 @@ void setProps(
) )
``` ```
Quando stai integrando con un'applicazione JavaScript esterna puoi voler segnalare un cambiamento a un componente React il cui rendering è stato effettuato con `React.render()`. Quando stai integrando con un'applicazione JavaScript esterna puoi voler segnalare un cambiamento a un componente React il cui rendering è stato effettuato con `ReactDOM.render()`.
Chiamare `setProps()` su un componente al livello radice cambierà le sue proprietà e scatenerà un ri-rendering. Inoltre, puoi fornire una funzione callback opzionale che verrà eseguita quando `setProps` ha terminato e il rendering del componente è terminato. Chiamare `setProps()` su un componente al livello radice cambierà le sue proprietà e scatenerà un ri-rendering. Inoltre, puoi fornire una funzione callback opzionale che verrà eseguita quando `setProps` ha terminato e il rendering del componente è terminato.
> Nota: > Nota:
> >
> Quando possibile, l'approccio dichiarativo di invocare nuovamente `React.render()` sullo stesso nodo è preferibile. Quest'ultimo tende a rendere gli aggiornamenti più comprensibili. (Non vi è una differenza significativa di prestazioni tra i due approcci.) > Quando possibile, l'approccio dichiarativo di invocare nuovamente `ReactDOM.render()` sullo stesso nodo è preferibile. Quest'ultimo tende a rendere gli aggiornamenti più comprensibili. (Non vi è una differenza significativa di prestazioni tra i due approcci.)
> >
> Questo metodo può essere chiamato soltanto su un componente al livello radice. Ovvero, è disponibile soltanto sul componente passato direttamente a `React.render()` e nessuno dei suoi figli. Se il tuo intento è usare `setProps()` su un componente figlio, approfitta degli aggiornamenti reattivi e passa la nuova proprietà al componente figlio quando viene creato in `render()`. > Questo metodo può essere chiamato soltanto su un componente al livello radice. Ovvero, è disponibile soltanto sul componente passato direttamente a `ReactDOM.render()` e nessuno dei suoi figli. Se il tuo intento è usare `setProps()` su un componente figlio, approfitta degli aggiornamenti reattivi e passa la nuova proprietà al componente figlio quando viene creato in `render()`.
> >
> Questo metodo non è disponibile il componenti `class` ES6 che estendono `React.Component`. Potrebbe essere eliminato del tutto in una versione futura di React. > Questo metodo non è disponibile il componenti `class` ES6 che estendono `React.Component`. Potrebbe essere eliminato del tutto in una versione futura di React.

10
docs/ref-02-component-api.ko-KR.md

@ -8,7 +8,7 @@ next: component-specs-ko-KR.html
## React.Component ## React.Component
React 컴포넌트의 인스턴스는 React가 렌더링 시에 내부적으로 만듭니다. 이때 만들어진 인스턴스는 이후의 렌더링에서 다시 사용되고 컴포넌트의 메소드들에서 `this` 변수로 접근할 수 있습니다. React 외부에서 React 컴포넌트의 핸들을 얻는 방법은 `React.render`의 리턴값을 저장하는 것이 유일합니다. 다른 컴포넌트 안에서 비슷한 결과를 얻으려면 [refs](/react/docs/more-about-refs-ko-KR.html)를 사용해야 합니다. React 컴포넌트의 인스턴스는 React가 렌더링 시에 내부적으로 만듭니다. 이때 만들어진 인스턴스는 이후의 렌더링에서 다시 사용되고 컴포넌트의 메소드들에서 `this` 변수로 접근할 수 있습니다. React 외부에서 React 컴포넌트의 핸들을 얻는 방법은 `ReactDOM.render`의 리턴값을 저장하는 것이 유일합니다. 다른 컴포넌트 안에서 비슷한 결과를 얻으려면 [refs](/react/docs/more-about-refs-ko-KR.html)를 사용해야 합니다.
### setState ### setState
@ -84,7 +84,7 @@ DOMElement getDOMNode()
> 주의: > 주의:
> >
> getDOMNode는 [React.findDOMNode()](/react/docs/top-level-api.html#react.finddomnode)로 교체되었습니다. > getDOMNode는 [ReactDOM.findDOMNode()](/react/docs/top-level-api.html#reactdom.finddomnode)로 교체되었습니다.
> >
> 이 메소드는 `React.Component`를 확장한 ES6 `class` 컴포넌트에서는 사용할 수 없습니다. React의 미래 버전에서 이는 완전히 사라지게 될 것입니다. > 이 메소드는 `React.Component`를 확장한 ES6 `class` 컴포넌트에서는 사용할 수 없습니다. React의 미래 버전에서 이는 완전히 사라지게 될 것입니다.
@ -108,15 +108,15 @@ boolean isMounted()
void setProps(object nextProps[, function callback]) void setProps(object nextProps[, function callback])
``` ```
외부 JavaScript 애플리케이션과 연동하는 경우 `React.render()`로 렌더링된 React 컴포넌트에 변경을 알리고 싶을 때가 있습니다. 외부 JavaScript 애플리케이션과 연동하는 경우 `ReactDOM.render()`로 렌더링된 React 컴포넌트에 변경을 알리고 싶을 때가 있습니다.
최상위 컴포넌트에서 `setProps()`를 호출하면 프로퍼티를 변경하고 렌더를 다시 발생합니다. 거기에 콜백 함수를 넘기면 `setProps`가 완료되고 컴포넌트가 다시 렌더링된 다음에 한번 호출됩니다. 최상위 컴포넌트에서 `setProps()`를 호출하면 프로퍼티를 변경하고 렌더를 다시 발생합니다. 거기에 콜백 함수를 넘기면 `setProps`가 완료되고 컴포넌트가 다시 렌더링된 다음에 한번 호출됩니다.
> 주의: > 주의:
> >
> 가능하다면 이것 대신 `React.render()`를 같은 노드에서 다시 호출하는 선언적인 방법이 더 바람직합니다. 그렇게 하는 편이 업데이트에 대해 생각하는 것을 쉽게 만듭니다. (두가지 방식에 눈에 띄는 성능 차이는 없습니다.) > 가능하다면 이것 대신 `ReactDOM.render()`를 같은 노드에서 다시 호출하는 선언적인 방법이 더 바람직합니다. 그렇게 하는 편이 업데이트에 대해 생각하는 것을 쉽게 만듭니다. (두가지 방식에 눈에 띄는 성능 차이는 없습니다.)
> >
> 이 메소드는 최상위 컴포넌트에만 호출 가능합니다. 다시 말해, `React.render()`에 바로 넘긴 컴포넌트에서만 사용할 수 있고 자식에서는 불가능합니다. 자식 컴포넌트에 `setProps()`를 사용하고 싶다면, 그 대신 반응적인 업데이트의 장점을 활용하여 `render()` 안에서 자식 컴포넌트를 만들 때 새로운 prop을 넘기세요. > 이 메소드는 최상위 컴포넌트에만 호출 가능합니다. 다시 말해, `ReactDOM.render()`에 바로 넘긴 컴포넌트에서만 사용할 수 있고 자식에서는 불가능합니다. 자식 컴포넌트에 `setProps()`를 사용하고 싶다면, 그 대신 반응적인 업데이트의 장점을 활용하여 `render()` 안에서 자식 컴포넌트를 만들 때 새로운 prop을 넘기세요.
> >
> 이 메소드는 `React.Component`를 확장한 ES6 `class` 컴포넌트에서는 사용할 수 없습니다. React의 미래 버전에서 이는 완전히 사라지게 될 것입니다. > 이 메소드는 `React.Component`를 확장한 ES6 `class` 컴포넌트에서는 사용할 수 없습니다. React의 미래 버전에서 이는 완전히 사라지게 될 것입니다.

10
docs/ref-02-component-api.md

@ -8,7 +8,7 @@ next: component-specs.html
## React.Component ## React.Component
Instances of a React Component are created internally in React when rendering. These instances are reused in subsequent renders, and can be accessed in your component methods as `this`. The only way to get a handle to a React Component instance outside of React is by storing the return value of `React.render`. Inside other Components, you may use [refs](/react/docs/more-about-refs.html) to achieve the same result. Instances of a React Component are created internally in React when rendering. These instances are reused in subsequent renders, and can be accessed in your component methods as `this`. The only way to get a handle to a React Component instance outside of React is by storing the return value of `ReactDOM.render`. Inside other Components, you may use [refs](/react/docs/more-about-refs.html) to achieve the same result.
### setState ### setState
@ -91,7 +91,7 @@ If this component has been mounted into the DOM, this returns the corresponding
> Note: > Note:
> >
> getDOMNode is deprecated and has been replaced with [React.findDOMNode()](/react/docs/top-level-api.html#react.finddomnode). > getDOMNode is deprecated and has been replaced with [ReactDOM.findDOMNode()](/react/docs/top-level-api.html#reactdom.finddomnode).
> >
> This method is not available on ES6 `class` components that extend `React.Component`. It may be removed entirely in a future version of React. > This method is not available on ES6 `class` components that extend `React.Component`. It may be removed entirely in a future version of React.
@ -118,15 +118,15 @@ void setProps(
) )
``` ```
When you're integrating with an external JavaScript application you may want to signal a change to a React component rendered with `React.render()`. When you're integrating with an external JavaScript application you may want to signal a change to a React component rendered with `ReactDOM.render()`.
Calling `setProps()` on a root-level component will change its properties and trigger a re-render. In addition, you can supply an optional callback function that is executed once `setProps` is completed and the component is re-rendered. Calling `setProps()` on a root-level component will change its properties and trigger a re-render. In addition, you can supply an optional callback function that is executed once `setProps` is completed and the component is re-rendered.
> Note: > Note:
> >
> When possible, the declarative approach of calling `React.render()` again on the same node is preferred instead. It tends to make updates easier to reason about. (There's no significant performance difference between the two approaches.) > When possible, the declarative approach of calling `ReactDOM.render()` again on the same node is preferred instead. It tends to make updates easier to reason about. (There's no significant performance difference between the two approaches.)
> >
> This method can only be called on a root-level component. That is, it's only available on the component passed directly to `React.render()` and none of its children. If you're inclined to use `setProps()` on a child component, instead take advantage of reactive updates and pass the new prop to the child component when it's created in `render()`. > This method can only be called on a root-level component. That is, it's only available on the component passed directly to `ReactDOM.render()` and none of its children. If you're inclined to use `setProps()` on a child component, instead take advantage of reactive updates and pass the new prop to the child component when it's created in `render()`.
> >
> This method is not available on ES6 `class` components that extend `React.Component`. It may be removed entirely in a future version of React. > This method is not available on ES6 `class` components that extend `React.Component`. It may be removed entirely in a future version of React.

4
docs/ref-03-component-specs.it-IT.md

@ -24,7 +24,7 @@ Il metodo `render()` è richiesto.
Quando viene chiamato, dovrebbe esaminare `this.props` e `this.state` e restituire un singolo elemento figlio. Questo elemento figlio può essere sia una rappresentazione virtuale di un componente DOM nativo (come `<div />` o `React.DOM.div()`) o un altro componente composito che hai definito tu stesso. Quando viene chiamato, dovrebbe esaminare `this.props` e `this.state` e restituire un singolo elemento figlio. Questo elemento figlio può essere sia una rappresentazione virtuale di un componente DOM nativo (come `<div />` o `React.DOM.div()`) o un altro componente composito che hai definito tu stesso.
Puoi anche restituire `null` o `false` per indicare che desideri che non venga visualizzato nulla. Dietro le quinte, React visualizza un tag `<noscript>` per lavorare con il nostro attuale algoritmo di differenza. Quando si restituisce `null` o `false`, `React.findDOMNode(this)` restituirà `null`. Puoi anche restituire `null` o `false` per indicare che desideri che non venga visualizzato nulla. Dietro le quinte, React visualizza un tag `<noscript>` per lavorare con il nostro attuale algoritmo di differenza. Quando si restituisce `null` o `false`, `ReactDOM.findDOMNode(this)` restituirà `null`.
La funzione `render()` dovrebbe essere *pura*, nel senso che non modifica lo stato del componente, restituisce lo stesso risultato ogni volta che viene invocato, e non legge o scrive il DOM o interagisce in altro modo con il browser (ad es. usando `setTimeout`). Se devi interagire con il browser, effettua le tue operazioni in `componentDidMount()` o negli altri metodi del ciclo di vita. Mantenere `render()` puro rende il rendering lato server più praticabile e rende i componenti più facili da comprendere. La funzione `render()` dovrebbe essere *pura*, nel senso che non modifica lo stato del componente, restituisce lo stesso risultato ogni volta che viene invocato, e non legge o scrive il DOM o interagisce in altro modo con il browser (ad es. usando `setTimeout`). Se devi interagire con il browser, effettua le tue operazioni in `componentDidMount()` o negli altri metodi del ciclo di vita. Mantenere `render()` puro rende il rendering lato server più praticabile e rende i componenti più facili da comprendere.
@ -121,7 +121,7 @@ Invocato una volta, sia sul client che sul server, immediatamente prima che il r
void componentDidMount() void componentDidMount()
``` ```
Invocato una volta, solo sul client (e non sul server), immediatamente dopo che il rendering iniziale ha avuto luogo. A questo punto del ciclo di vita, il componente ha una rappresentazione DOM che puoi accedere attraverso `React.findDOMNode(this)`. Il metodo `componentDidMount()` dei componenti figli è invocato prima di quello dei componenti genitori. Invocato una volta, solo sul client (e non sul server), immediatamente dopo che il rendering iniziale ha avuto luogo. A questo punto del ciclo di vita, il componente ha una rappresentazione DOM che puoi accedere attraverso `ReactDOM.findDOMNode(this)`. Il metodo `componentDidMount()` dei componenti figli è invocato prima di quello dei componenti genitori.
Se desideri integrare con altri framework JavaScript, impostare dei timer usando `setTimeout` o `setInterval`, oppure inviare richieste AJAX, effettua tali operazioni in questo metodo. Se desideri integrare con altri framework JavaScript, impostare dei timer usando `setTimeout` o `setInterval`, oppure inviare richieste AJAX, effettua tali operazioni in questo metodo.

4
docs/ref-03-component-specs.ko-KR.md

@ -24,7 +24,7 @@ ReactElement render()
호출되면 `this.props``this.state`를 토대로 하나의 자식 엘리먼트를 리턴합니다. 이 자식 엘리먼트는 네이티브 DOM 컴포넌트의 가상 표현 (`<div />`나 `React.DOM.div()` 등) 또는 직접 정의한 조합(composite) 컴포넌트가 될 수 있습니다. 호출되면 `this.props``this.state`를 토대로 하나의 자식 엘리먼트를 리턴합니다. 이 자식 엘리먼트는 네이티브 DOM 컴포넌트의 가상 표현 (`<div />`나 `React.DOM.div()` 등) 또는 직접 정의한 조합(composite) 컴포넌트가 될 수 있습니다.
아무 것도 렌더링되지 않도록 하려면 `null`이나 `false`를 리턴합니다. React는 지금의 차이 비교 알고리즘이 작동할 수 있도록 내부적으로는 `<noscript>` 태그를 렌더링합니다. `null`이나 `false`를 리턴한 경우, `React.findDOMNode(this)``null`을 리턴합니다. 아무 것도 렌더링되지 않도록 하려면 `null`이나 `false`를 리턴합니다. React는 지금의 차이 비교 알고리즘이 작동할 수 있도록 내부적으로는 `<noscript>` 태그를 렌더링합니다. `null`이나 `false`를 리턴한 경우, `ReactDOM.findDOMNode(this)``null`을 리턴합니다.
`render()` 함수는 순수 함수여야 합니다. 즉, 컴포넌트의 상태를 변경하지 않고, 여러번 호출해도 같은 결과를 리턴하며, DOM을 읽고 쓰거나 브라우저와 상호작용(예를 들어 `setTimeout`를 사용)하지 않아야 합니다. 브라우저와 상호작용해야 한다면 `componentDidMount()`나 다른 생명주기 메소드에서 수행해야 합니다. `render()` 함수를 순수 함수로 유지하면 서버 렌더링이 훨씬 쓸만해지고 컴포넌트에 대해 생각하기 쉬워집니다. `render()` 함수는 순수 함수여야 합니다. 즉, 컴포넌트의 상태를 변경하지 않고, 여러번 호출해도 같은 결과를 리턴하며, DOM을 읽고 쓰거나 브라우저와 상호작용(예를 들어 `setTimeout`를 사용)하지 않아야 합니다. 브라우저와 상호작용해야 한다면 `componentDidMount()`나 다른 생명주기 메소드에서 수행해야 합니다. `render()` 함수를 순수 함수로 유지하면 서버 렌더링이 훨씬 쓸만해지고 컴포넌트에 대해 생각하기 쉬워집니다.
@ -122,7 +122,7 @@ void componentWillMount()
void componentDidMount() void componentDidMount()
``` ```
최초 렌더링이 일어난 다음 클라이언트에서만 한번 호출됩니다. (서버에서는 호출되지 않습니다.) 이 시점에 컴포넌트는 `React.findDOMNode(this)`로 접근 가능한 DOM 표현을 가집니다. 최초 렌더링이 일어난 다음 클라이언트에서만 한번 호출됩니다. (서버에서는 호출되지 않습니다.) 이 시점에 컴포넌트는 `ReactDOM.findDOMNode(this)`로 접근 가능한 DOM 표현을 가집니다.
다른 JavaScript 프레임워크를 연동하거나, `setTimeout`/`setInterval`로 타이머를 설정하고 AJAX 요청을 보내는 등의 작업을 이 메소드에서 합니다. 다른 JavaScript 프레임워크를 연동하거나, `setTimeout`/`setInterval`로 타이머를 설정하고 AJAX 요청을 보내는 등의 작업을 이 메소드에서 합니다.

4
docs/ref-03-component-specs.md

@ -24,7 +24,7 @@ The `render()` method is required.
When called, it should examine `this.props` and `this.state` and return a single child element. This child element can be either a virtual representation of a native DOM component (such as `<div />` or `React.DOM.div()`) or another composite component that you've defined yourself. When called, it should examine `this.props` and `this.state` and return a single child element. This child element can be either a virtual representation of a native DOM component (such as `<div />` or `React.DOM.div()`) or another composite component that you've defined yourself.
You can also return `null` or `false` to indicate that you don't want anything rendered. Behind the scenes, React renders a `<noscript>` tag to work with our current diffing algorithm. When returning `null` or `false`, `React.findDOMNode(this)` will return `null`. You can also return `null` or `false` to indicate that you don't want anything rendered. Behind the scenes, React renders a `<noscript>` tag to work with our current diffing algorithm. When returning `null` or `false`, `ReactDOM.findDOMNode(this)` will return `null`.
The `render()` function should be *pure*, meaning that it does not modify component state, it returns the same result each time it's invoked, and it does not read from or write to the DOM or otherwise interact with the browser (e.g., by using `setTimeout`). If you need to interact with the browser, perform your work in `componentDidMount()` or the other lifecycle methods instead. Keeping `render()` pure makes server rendering more practical and makes components easier to think about. The `render()` function should be *pure*, meaning that it does not modify component state, it returns the same result each time it's invoked, and it does not read from or write to the DOM or otherwise interact with the browser (e.g., by using `setTimeout`). If you need to interact with the browser, perform your work in `componentDidMount()` or the other lifecycle methods instead. Keeping `render()` pure makes server rendering more practical and makes components easier to think about.
@ -121,7 +121,7 @@ Invoked once, both on the client and server, immediately before the initial rend
void componentDidMount() void componentDidMount()
``` ```
Invoked once, only on the client (not on the server), immediately after the initial rendering occurs. At this point in the lifecycle, the component has a DOM representation which you can access via `React.findDOMNode(this)`. The `componentDidMount()` method of child components is invoked before that of parent components. Invoked once, only on the client (not on the server), immediately after the initial rendering occurs. At this point in the lifecycle, the component has a DOM representation which you can access via `ReactDOM.findDOMNode(this)`. The `componentDidMount()` method of child components is invoked before that of parent components.
If you want to integrate with other JavaScript frameworks, set timers using `setTimeout` or `setInterval`, or send AJAX requests, perform those operations in this method. If you want to integrate with other JavaScript frameworks, set timers using `setTimeout` or `setInterval`, or send AJAX requests, perform those operations in this method.

22
docs/ref-09-glossary.it-IT.md

@ -21,10 +21,10 @@ Puoi creare uno di questi oggetti attraverso `React.createElement`.
var root = React.createElement('div'); var root = React.createElement('div');
``` ```
Per effettuare il rendering di un nuovo albero nel DOM, crei dei `ReactElement` ande li passi a `React.render` assieme a un `Element` DOM regolare (`HTMLElement` o `SVGElement`). I `ReactElement` non vanno confusi con gli `Element` del DOM. Un `ReactElement` è una rappresentazione leggera, priva di stato, immutabile e virtuale di un `Element` del DOM. È un DOM virtuale. Per effettuare il rendering di un nuovo albero nel DOM, crei dei `ReactElement` ande li passi a `ReactDOM.render` assieme a un `Element` DOM regolare (`HTMLElement` o `SVGElement`). I `ReactElement` non vanno confusi con gli `Element` del DOM. Un `ReactElement` è una rappresentazione leggera, priva di stato, immutabile e virtuale di un `Element` del DOM. È un DOM virtuale.
```javascript ```javascript
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
Per aggiungere proprietà ad un elemento DOM, passa un oggetto di proprietà come secondo argomento, e i figli come terzo argomento. Per aggiungere proprietà ad un elemento DOM, passa un oggetto di proprietà come secondo argomento, e i figli come terzo argomento.
@ -32,7 +32,7 @@ Per aggiungere proprietà ad un elemento DOM, passa un oggetto di proprietà com
```javascript ```javascript
var child = React.createElement('li', null, 'Contenuto di Testo'); var child = React.createElement('li', null, 'Contenuto di Testo');
var root = React.createElement('ul', { className: 'my-list' }, child); var root = React.createElement('ul', { className: 'my-list' }, child);
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
Se usi React JSX, allora questi `ReactElement` verranno creati per te. Questa espressione è equivalente: Se usi React JSX, allora questi `ReactElement` verranno creati per te. Questa espressione è equivalente:
@ -41,7 +41,7 @@ Se usi React JSX, allora questi `ReactElement` verranno creati per te. Questa es
var root = <ul className="my-list"> var root = <ul className="my-list">
<li>Contenuto di Testo</li> <li>Contenuto di Testo</li>
</ul>; </ul>;
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
### Le Factory ### Le Factory
@ -59,7 +59,7 @@ Ti permette di creare una conveniente scorciatoia anziché scrivere ogni volta `
```javascript ```javascript
var div = React.createFactory('div'); var div = React.createFactory('div');
var root = div({ className: 'my-div' }); var root = div({ className: 'my-div' });
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
React possiede già factory integrate per tag HTML comuni: React possiede già factory integrate per tag HTML comuni:
@ -119,17 +119,17 @@ OPPURE usando JSX:
var element = <MyComponent />; var element = <MyComponent />;
``` ```
Quando `element` viene passato a `React.render`, React chiamerà il costruttore al tuo posto e creerà un`ReactComponent`, che verrà restituito. Quando `element` viene passato a `ReactDOM.render`, React chiamerà il costruttore al tuo posto e creerà un`ReactComponent`, che verrà restituito.
```javascript ```javascript
var component = React.render(element, document.getElementById('example')); var component = ReactDOM.render(element, document.getElementById('example'));
``` ```
Se chiami ripetutamente `React.render` con lo stesso tipo di `ReactElement` e lo stesso `Element` DOM come contenitore, ti restituirà sempre la stessa istanza. Questa istanza è dotata di stato. Se chiami ripetutamente `ReactDOM.render` con lo stesso tipo di `ReactElement` e lo stesso `Element` DOM come contenitore, ti restituirà sempre la stessa istanza. Questa istanza è dotata di stato.
```javascript ```javascript
var componentA = React.render(<MyComponent />, document.getElementById('example')); var componentA = ReactDOM.render(<MyComponent />, document.getElementById('example'));
var componentB = React.render(<MyComponent />, document.getElementById('example')); var componentB = ReactDOM.render(<MyComponent />, document.getElementById('example'));
componentA === componentB; // true componentA === componentB; // true
``` ```
@ -143,7 +143,7 @@ Ci si aspetta che il metodo `render` di un `ReactComponent` restituisca un altro
### Punto di Entrata ### Punto di Entrata
``` ```
React.render = (ReactElement, HTMLElement | SVGElement) => ReactComponent; ReactDOM.render = (ReactElement, HTMLElement | SVGElement) => ReactComponent;
``` ```
### Nodi ed Elementi ### Nodi ed Elementi

22
docs/ref-09-glossary.ko-KR.md

@ -21,10 +21,10 @@ prev: reconciliation-ko-KR.html
var root = React.createElement('div'); var root = React.createElement('div');
``` ```
DOM에 새로운 트리를 렌더링하기 위해서는 `ReactElement`를 만들고 일반적인 DOM `Element` (`HTMLElement` 또는 `SVGElement`)와 함께 `React.render`에 넘깁니다. `ReactElement`를 DOM `Element`와 혼동해서는 안됩니다. `ReactElement`는 가볍고, 상태를 갖지 않으며, 변경 불가능한, DOM `Element`의 가상 표현입니다. 즉 가상 DOM입니다. DOM에 새로운 트리를 렌더링하기 위해서는 `ReactElement`를 만들고 일반적인 DOM `Element` (`HTMLElement` 또는 `SVGElement`)와 함께 `ReactDOM.render`에 넘깁니다. `ReactElement`를 DOM `Element`와 혼동해서는 안됩니다. `ReactElement`는 가볍고, 상태를 갖지 않으며, 변경 불가능한, DOM `Element`의 가상 표현입니다. 즉 가상 DOM입니다.
```javascript ```javascript
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
DOM 엘리먼트에 프로퍼티를 추가하려면 두번째 인자로 프로퍼티 객체를, 세번째 인자로 자식을 넘깁니다. DOM 엘리먼트에 프로퍼티를 추가하려면 두번째 인자로 프로퍼티 객체를, 세번째 인자로 자식을 넘깁니다.
@ -32,7 +32,7 @@ DOM 엘리먼트에 프로퍼티를 추가하려면 두번째 인자로 프로
```javascript ```javascript
var child = React.createElement('li', null, 'Text Content'); var child = React.createElement('li', null, 'Text Content');
var root = React.createElement('ul', { className: 'my-list' }, child); var root = React.createElement('ul', { className: 'my-list' }, child);
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
React JSX를 사용하면 `ReactElement`가 알아서 만들어집니다. 따라서 다음 코드는 앞의 코드와 같습니다: React JSX를 사용하면 `ReactElement`가 알아서 만들어집니다. 따라서 다음 코드는 앞의 코드와 같습니다:
@ -41,7 +41,7 @@ React JSX를 사용하면 `ReactElement`가 알아서 만들어집니다. 따라
var root = <ul className="my-list"> var root = <ul className="my-list">
<li>Text Content</li> <li>Text Content</li>
</ul>; </ul>;
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
__팩토리__ __팩토리__
@ -59,7 +59,7 @@ function createFactory(type) {
```javascript ```javascript
var div = React.createFactory('div'); var div = React.createFactory('div');
var root = div({ className: 'my-div' }); var root = div({ className: 'my-div' });
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
React에는 이미 보통의 HTML 태그를 위한 팩토리가 내장되어 있습니다: React에는 이미 보통의 HTML 태그를 위한 팩토리가 내장되어 있습니다:
@ -119,17 +119,17 @@ var element = React.createElement(MyComponent);
var element = <MyComponent />; var element = <MyComponent />;
``` ```
이것이 `React.render`에 넘겨지면 React가 알아서 생성자를 호출하여 `ReactComponent`를 만들고 리턴합니다. 이것이 `ReactDOM.render`에 넘겨지면 React가 알아서 생성자를 호출하여 `ReactComponent`를 만들고 리턴합니다.
```javascript ```javascript
var component = React.render(element, document.getElementById('example')); var component = ReactDOM.render(element, document.getElementById('example'));
``` ```
같은 타입의 `ReactElement`와 같은 컨테이너 DOM `Element`를 가지고 `React.render`를 계속 호출하면 항상 같은 인스턴스를 리턴합니다. 이 인스턴스는 상태를 가집니다. 같은 타입의 `ReactElement`와 같은 컨테이너 DOM `Element`를 가지고 `ReactDOM.render`를 계속 호출하면 항상 같은 인스턴스를 리턴합니다. 이 인스턴스는 상태를 가집니다.
```javascript ```javascript
var componentA = React.render(<MyComponent />, document.getElementById('example')); var componentA = ReactDOM.render(<MyComponent />, document.getElementById('example'));
var componentB = React.render(<MyComponent />, document.getElementById('example')); var componentB = ReactDOM.render(<MyComponent />, document.getElementById('example'));
componentA === componentB; // true componentA === componentB; // true
``` ```
@ -143,7 +143,7 @@ componentA === componentB; // true
__진입점__ __진입점__
``` ```
React.render = (ReactElement, HTMLElement | SVGElement) => ReactComponent; ReactDOM.render = (ReactElement, HTMLElement | SVGElement) => ReactComponent;
``` ```
__노드와 엘리먼트__ __노드와 엘리먼트__

22
docs/ref-09-glossary.md

@ -21,10 +21,10 @@ You can create one of these objects through `React.createElement`.
var root = React.createElement('div'); var root = React.createElement('div');
``` ```
To render a new tree into the DOM, you create `ReactElement`s and pass them to `React.render` along with a regular DOM `Element` (`HTMLElement` or `SVGElement`). `ReactElement`s are not to be confused with DOM `Element`s. A `ReactElement` is a light, stateless, immutable, virtual representation of a DOM `Element`. It is a virtual DOM. To render a new tree into the DOM, you create `ReactElement`s and pass them to `ReactDOM.render` along with a regular DOM `Element` (`HTMLElement` or `SVGElement`). `ReactElement`s are not to be confused with DOM `Element`s. A `ReactElement` is a light, stateless, immutable, virtual representation of a DOM `Element`. It is a virtual DOM.
```javascript ```javascript
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
To add properties to a DOM element, pass a properties object as the second argument and children to the third argument. To add properties to a DOM element, pass a properties object as the second argument and children to the third argument.
@ -32,7 +32,7 @@ To add properties to a DOM element, pass a properties object as the second argum
```javascript ```javascript
var child = React.createElement('li', null, 'Text Content'); var child = React.createElement('li', null, 'Text Content');
var root = React.createElement('ul', { className: 'my-list' }, child); var root = React.createElement('ul', { className: 'my-list' }, child);
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
If you use React JSX, then these `ReactElement`s are created for you. So this is equivalent: If you use React JSX, then these `ReactElement`s are created for you. So this is equivalent:
@ -41,7 +41,7 @@ If you use React JSX, then these `ReactElement`s are created for you. So this is
var root = <ul className="my-list"> var root = <ul className="my-list">
<li>Text Content</li> <li>Text Content</li>
</ul>; </ul>;
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
### Factories ### Factories
@ -59,7 +59,7 @@ It allows you to create a convenient short-hand instead of typing out `React.cre
```javascript ```javascript
var div = React.createFactory('div'); var div = React.createFactory('div');
var root = div({ className: 'my-div' }); var root = div({ className: 'my-div' });
React.render(root, document.getElementById('example')); ReactDOM.render(root, document.getElementById('example'));
``` ```
React already has built-in factories for common HTML tags: React already has built-in factories for common HTML tags:
@ -119,17 +119,17 @@ OR using JSX:
var element = <MyComponent />; var element = <MyComponent />;
``` ```
When this is passed to `React.render`, React will call the constructor for you and create a `ReactComponent`, which is returned. When this is passed to `ReactDOM.render`, React will call the constructor for you and create a `ReactComponent`, which is returned.
```javascript ```javascript
var component = React.render(element, document.getElementById('example')); var component = ReactDOM.render(element, document.getElementById('example'));
``` ```
If you keep calling `React.render` with the same type of `ReactElement` and the same container DOM `Element` it always returns the same instance. This instance is stateful. If you keep calling `ReactDOM.render` with the same type of `ReactElement` and the same container DOM `Element` it always returns the same instance. This instance is stateful.
```javascript ```javascript
var componentA = React.render(<MyComponent />, document.getElementById('example')); var componentA = ReactDOM.render(<MyComponent />, document.getElementById('example'));
var componentB = React.render(<MyComponent />, document.getElementById('example')); var componentB = ReactDOM.render(<MyComponent />, document.getElementById('example'));
componentA === componentB; // true componentA === componentB; // true
``` ```
@ -143,7 +143,7 @@ The `render` method of a `ReactComponent` is expected to return another `ReactEl
### Entry Point ### Entry Point
``` ```
React.render = (ReactElement, HTMLElement | SVGElement) => ReactComponent; ReactDOM.render = (ReactElement, HTMLElement | SVGElement) => ReactComponent;
``` ```
### Nodes and Elements ### Nodes and Elements

2
docs/thinking-in-react.it-IT.md

@ -69,7 +69,7 @@ Per costruire una versione statica della tua applicazione dhe visualizzi il tuo
Puoi costruire dall'alto in basso, o dal basso in alto. Ovvero, puoi cominciare a costruire i componenti più in alto nella gerarchia (cioè cominciare con `FilterableProductTable`) oppure con quelli più in basso (`ProductRow`). In esempi più semplici, è solitamente più facile andare dall'alto in basso, mentre in progetti più grandi è più facile andare dal basso in alto e scrivere test mentre costruisci. Puoi costruire dall'alto in basso, o dal basso in alto. Ovvero, puoi cominciare a costruire i componenti più in alto nella gerarchia (cioè cominciare con `FilterableProductTable`) oppure con quelli più in basso (`ProductRow`). In esempi più semplici, è solitamente più facile andare dall'alto in basso, mentre in progetti più grandi è più facile andare dal basso in alto e scrivere test mentre costruisci.
Alla fine di questo passo avrai una libreria di componenti riutilizzabili che visualizzano il tuo modello dati. I componenti avranno soltanto metodi `render()` dal momento che questa è una versione statica della tua applicazione. Il componente al vertice della gerarchia (`FilterableProductTable`) prenderà il tuo modello dati come una proprietà. Se apporti un cambiamento al tuo modello dati sottostante e chiami nuovamente `React.render()`, la UI sarà aggiornata. È facile vedere come la tua UI viene aggiornata e dove applicare cambiamenti dal momento che non c'è nulla di complicato. Il **flusso dati unidirezionale** di React (detto anche *binding unidirezionale*) mantiene tutto modulare e veloce. Alla fine di questo passo avrai una libreria di componenti riutilizzabili che visualizzano il tuo modello dati. I componenti avranno soltanto metodi `render()` dal momento che questa è una versione statica della tua applicazione. Il componente al vertice della gerarchia (`FilterableProductTable`) prenderà il tuo modello dati come una proprietà. Se apporti un cambiamento al tuo modello dati sottostante e chiami nuovamente `ReactDOM.render()`, la UI sarà aggiornata. È facile vedere come la tua UI viene aggiornata e dove applicare cambiamenti dal momento che non c'è nulla di complicato. Il **flusso dati unidirezionale** di React (detto anche *binding unidirezionale*) mantiene tutto modulare e veloce.
Fai riferimento alla [documentazione React](/react/docs/) se hai bisogno di aiuto nell'eseguire questo passo. Fai riferimento alla [documentazione React](/react/docs/) se hai bisogno di aiuto nell'eseguire questo passo.

2
docs/thinking-in-react.ko-KR.md

@ -69,7 +69,7 @@ React의 많은 뛰어난 점들 중 하나는 생각을 하면서 애플리케
껍데기부터 혹은 속알맹이부터 만들 수 있습니다. 즉 계층구조상 위에서부터 (`FilterableProductTable` 부터) 혹은 아래에서부터 (`ProductRow`), 어느 방향에서든 시작해도 됩니다. 통상 큰 프로젝트에서는 계층구조상 위에서부터 시작하는 것이 쉽고, 테스트를 작성할때는, 아래에서부터 시작하는 것이 쉽습니다. 껍데기부터 혹은 속알맹이부터 만들 수 있습니다. 즉 계층구조상 위에서부터 (`FilterableProductTable` 부터) 혹은 아래에서부터 (`ProductRow`), 어느 방향에서든 시작해도 됩니다. 통상 큰 프로젝트에서는 계층구조상 위에서부터 시작하는 것이 쉽고, 테스트를 작성할때는, 아래에서부터 시작하는 것이 쉽습니다.
이 단계의 결과, 자료 모델을 그리는 재활용 가능한 컴포넌트의 라이브러리를 갖게 되었습니다. 정적버전 이후로 컴포넌트들은 오직 `render()` 메소드만 갖고 있습니다. 계층구조상 가장 위의 컴포넌트 (`FilterableProductTable`)은 자료 모델을 prop으로 취할 것입니다. 자료 모델이 변했을 때, `React.render()`를 다시 부르면 UI가 업데이트 됩니다. 어떻게 UI가 업데이트 되는지 참 알기 쉽습니다. 자료가 바뀌어도 처리해야 할 복잡한 일이 아무것도 없습니다. React의 **단일 방향 자료 흐름** (혹은 *단일방향 바인딩*)이 모든것을 모듈식으로, 추론하기 쉽게, 그리고 빠르게 유지해줍니다. 이 단계의 결과, 자료 모델을 그리는 재활용 가능한 컴포넌트의 라이브러리를 갖게 되었습니다. 정적버전 이후로 컴포넌트들은 오직 `render()` 메소드만 갖고 있습니다. 계층구조상 가장 위의 컴포넌트 (`FilterableProductTable`)은 자료 모델을 prop으로 취할 것입니다. 자료 모델이 변했을 때, `ReactDOM.render()`를 다시 부르면 UI가 업데이트 됩니다. 어떻게 UI가 업데이트 되는지 참 알기 쉽습니다. 자료가 바뀌어도 처리해야 할 복잡한 일이 아무것도 없습니다. React의 **단일 방향 자료 흐름** (혹은 *단일방향 바인딩*)이 모든것을 모듈식으로, 추론하기 쉽게, 그리고 빠르게 유지해줍니다.
이 단계를 진행하는 데에 도움이 필요하시다면, [React 문서](/react/docs/getting-started-ko-KR.html)를 참조하세요. 이 단계를 진행하는 데에 도움이 필요하시다면, [React 문서](/react/docs/getting-started-ko-KR.html)를 참조하세요.

2
docs/thinking-in-react.md

@ -69,7 +69,7 @@ To build a static version of your app that renders your data model, you'll want
You can build top-down or bottom-up. That is, you can either start with building the components higher up in the hierarchy (i.e. starting with `FilterableProductTable`) or with the ones lower in it (`ProductRow`). In simpler examples, it's usually easier to go top-down, and on larger projects, it's easier to go bottom-up and write tests as you build. You can build top-down or bottom-up. That is, you can either start with building the components higher up in the hierarchy (i.e. starting with `FilterableProductTable`) or with the ones lower in it (`ProductRow`). In simpler examples, it's usually easier to go top-down, and on larger projects, it's easier to go bottom-up and write tests as you build.
At the end of this step, you'll have a library of reusable components that render your data model. The components will only have `render()` methods since this is a static version of your app. The component at the top of the hierarchy (`FilterableProductTable`) will take your data model as a prop. If you make a change to your underlying data model and call `React.render()` again, the UI will be updated. It's easy to see how your UI is updated and where to make changes since there's nothing complicated going on. React's **one-way data flow** (also called *one-way binding*) keeps everything modular and fast. At the end of this step, you'll have a library of reusable components that render your data model. The components will only have `render()` methods since this is a static version of your app. The component at the top of the hierarchy (`FilterableProductTable`) will take your data model as a prop. If you make a change to your underlying data model and call `ReactDOM.render()` again, the UI will be updated. It's easy to see how your UI is updated and where to make changes since there's nothing complicated going on. React's **one-way data flow** (also called *one-way binding*) keeps everything modular and fast.
Simply refer to the [React docs](/react/docs/) if you need help executing this step. Simply refer to the [React docs](/react/docs/) if you need help executing this step.

34
docs/tutorial.it-IT.md

@ -85,7 +85,7 @@ var CommentBox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<CommentBox />, <CommentBox />,
document.getElementById('content') document.getElementById('content')
); );
@ -108,7 +108,7 @@ var CommentBox = React.createClass({displayName: 'CommentBox',
); );
} }
}); });
React.render( ReactDOM.render(
React.createElement(CommentBox, null), React.createElement(CommentBox, null),
document.getElementById('content') document.getElementById('content')
); );
@ -124,11 +124,11 @@ I tag `<div>` non sono veri nodi DOM; sono istanze dei componenti React `div`. P
Non devi necessariamente restituire semplice HTML. Puoi anche restituire un albero di componenti costruiti da te (o da qualcun altro). Questo è ciò che rende React **componibile**: una caratteristica chiave dei front-end manutenibili. Non devi necessariamente restituire semplice HTML. Puoi anche restituire un albero di componenti costruiti da te (o da qualcun altro). Questo è ciò che rende React **componibile**: una caratteristica chiave dei front-end manutenibili.
`React.render()` istanzia il componente radice, avvia il framework, e inietta il markup in un elemento DOM nativo, fornito come secondo argomento. `ReactDOM.render()` istanzia il componente radice, avvia il framework, e inietta il markup in un elemento DOM nativo, fornito come secondo argomento.
## Comporre componenti ## Comporre componenti
Costruiamo degli scheletri per `CommentList` e `CommentForm` che saranno, nuovamente, dei semplici `<div>`. Aggiungi questi due componenti al tuo file, mantenendo la dichiarazione esistente di `CommentBox` e la chiamata a `React.render`: Costruiamo degli scheletri per `CommentList` e `CommentForm` che saranno, nuovamente, dei semplici `<div>`. Aggiungi questi due componenti al tuo file, mantenendo la dichiarazione esistente di `CommentBox` e la chiamata a `ReactDOM.render`:
```javascript ```javascript
// tutorial2.js // tutorial2.js
@ -293,7 +293,7 @@ var data = [
]; ];
``` ```
Dobbiamo inserire questi dati in `CommentList` in maniera modulare. Modifica `CommentBox` e la chiamata a `React.render()` per passare questi dati a `CommentList` tramite proprietà: Dobbiamo inserire questi dati in `CommentList` in maniera modulare. Modifica `CommentBox` e la chiamata a `ReactDOM.render()` per passare questi dati a `CommentList` tramite proprietà:
```javascript{7,15} ```javascript{7,15}
// tutorial9.js // tutorial9.js
@ -309,7 +309,7 @@ var CommentBox = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CommentBox data={data} />, <CommentBox data={data} />,
document.getElementById('content') document.getElementById('content')
); );
@ -345,7 +345,7 @@ Sostituiamo i dati scritti nel codice con dati dinamici ottenuti dal server. Rim
```javascript{3} ```javascript{3}
// tutorial11.js // tutorial11.js
React.render( ReactDOM.render(
<CommentBox url="/api/comments" />, <CommentBox url="/api/comments" />,
document.getElementById('content') document.getElementById('content')
); );
@ -460,7 +460,7 @@ var CommentBox = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CommentBox url="/api/comments" pollInterval={2000} />, <CommentBox url="/api/comments" pollInterval={2000} />,
document.getElementById('content') document.getElementById('content')
); );
@ -495,14 +495,14 @@ Rendiamo il modulo interattivo. Quando l'utente invia il modulo, dobbiamo ripuli
var CommentForm = React.createClass({ var CommentForm = React.createClass({
handleSubmit: function(e) { handleSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var author = React.findDOMNode(this.refs.author).value.trim(); var author = ReactDOM.findDOMNode(this.refs.author).value.trim();
var text = React.findDOMNode(this.refs.text).value.trim(); var text = ReactDOM.findDOMNode(this.refs.text).value.trim();
if (!text || !author) { if (!text || !author) {
return; return;
} }
// TODO: invia la richiesta al server // TODO: invia la richiesta al server
React.findDOMNode(this.refs.author).value = ''; ReactDOM.findDOMNode(this.refs.author).value = '';
React.findDOMNode(this.refs.text).value = ''; ReactDOM.findDOMNode(this.refs.text).value = '';
return; return;
}, },
render: function() { render: function() {
@ -525,7 +525,7 @@ Chiamiamo `preventDefault()` sull'evento per prevenire l'azione predefinita del
##### Refs ##### Refs
Usiamo l'attributo `ref` per assegnare un nome a un componente figlio e `this.refs` per riferirsi al componente. Possiamo chiamare `React.findDOMNode(component)` su di un componente per ottenere l'elemento nativo del DOM del browser. Usiamo l'attributo `ref` per assegnare un nome a un componente figlio e `this.refs` per riferirsi al componente. Possiamo chiamare `ReactDOM.findDOMNode(component)` su di un componente per ottenere l'elemento nativo del DOM del browser.
##### Callback come proprietà ##### Callback come proprietà
@ -578,14 +578,14 @@ Chiamiamo la callback da `CommentForm` quando l'utente invia il modulo:
var CommentForm = React.createClass({ var CommentForm = React.createClass({
handleSubmit: function(e) { handleSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var author = React.findDOMNode(this.refs.author).value.trim(); var author = ReactDOM.findDOMNode(this.refs.author).value.trim();
var text = React.findDOMNode(this.refs.text).value.trim(); var text = ReactDOM.findDOMNode(this.refs.text).value.trim();
if (!text || !author) { if (!text || !author) {
return; return;
} }
this.props.onCommentSubmit({author: author, text: text}); this.props.onCommentSubmit({author: author, text: text});
React.findDOMNode(this.refs.author).value = ''; ReactDOM.findDOMNode(this.refs.author).value = '';
React.findDOMNode(this.refs.text).value = ''; ReactDOM.findDOMNode(this.refs.text).value = '';
return; return;
}, },
render: function() { render: function() {

32
docs/tutorial.ja-JP.md

@ -84,7 +84,7 @@ var CommentBox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<CommentBox />, <CommentBox />,
document.getElementById('content') document.getElementById('content')
); );
@ -105,7 +105,7 @@ var CommentBox = React.createClass({displayName: 'CommentBox',
); );
} }
}); });
React.render( ReactDOM.render(
React.createElement(CommentBox, null), React.createElement(CommentBox, null),
document.getElementById('content') document.getElementById('content')
); );
@ -121,7 +121,7 @@ React.render(
実際の HTML を返す必要はありません。 自分が(もしくは他の誰かが)組み立てたコンポーネントツリーを返せばいいのです。 これこそ React が **composable**な(組み立てられる)ものである理由であり、この大事なルールを守ればフロントエンドはメンテナンスしやすいものとなります。 実際の HTML を返す必要はありません。 自分が(もしくは他の誰かが)組み立てたコンポーネントツリーを返せばいいのです。 これこそ React が **composable**な(組み立てられる)ものである理由であり、この大事なルールを守ればフロントエンドはメンテナンスしやすいものとなります。
`React.render()` はまずルートコンポーネントのインスタンスを作り、フレームワークを立ち上げます。そして、第2引数で与えられた実際の DOM 要素にマークアップを挿入します。 `ReactDOM.render()` はまずルートコンポーネントのインスタンスを作り、フレームワークを立ち上げます。そして、第2引数で与えられた実際の DOM 要素にマークアップを挿入します。
## コンポーネントの組み立て ## コンポーネントの組み立て
@ -286,7 +286,7 @@ var data = [
]; ];
``` ```
このデータはモジュールを使って `CommentList` に取り込む必要があります。`CommentBox` の `React.render()` の部分を手直しして、props を通してデータが `CommentList` へ渡るようにしましょう。 このデータはモジュールを使って `CommentList` に取り込む必要があります。`CommentBox` の `ReactDOM.render()` の部分を手直しして、props を通してデータが `CommentList` へ渡るようにしましょう。
```javascript{7,15} ```javascript{7,15}
// tutorial9.js // tutorial9.js
@ -302,7 +302,7 @@ var CommentBox = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CommentBox data={data} />, <CommentBox data={data} />,
document.getElementById('content') document.getElementById('content')
); );
@ -338,7 +338,7 @@ var CommentList = React.createClass({
```javascript{3} ```javascript{3}
// tutorial11.js // tutorial11.js
React.render( ReactDOM.render(
<CommentBox url="comments.json" />, <CommentBox url="comments.json" />,
document.getElementById('content') document.getElementById('content')
); );
@ -456,7 +456,7 @@ var CommentBox = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CommentBox url="comments.json" pollInterval={2000} />, <CommentBox url="comments.json" pollInterval={2000} />,
document.getElementById('content') document.getElementById('content')
); );
@ -491,14 +491,14 @@ var CommentForm = React.createClass({
var CommentForm = React.createClass({ var CommentForm = React.createClass({
handleSubmit: function(e) { handleSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var author = React.findDOMNode(this.refs.author).value.trim(); var author = ReactDOM.findDOMNode(this.refs.author).value.trim();
var text = React.findDOMNode(this.refs.text).value.trim(); var text = ReactDOM.findDOMNode(this.refs.text).value.trim();
if (!text || !author) { if (!text || !author) {
return; return;
} }
// TODO: サーバにリクエストを送信 // TODO: サーバにリクエストを送信
React.findDOMNode(this.refs.author).value = ''; ReactDOM.findDOMNode(this.refs.author).value = '';
React.findDOMNode(this.refs.text).value = ''; ReactDOM.findDOMNode(this.refs.text).value = '';
return; return;
}, },
render: function() { render: function() {
@ -521,7 +521,7 @@ React がコンポーネントにイベントハンドラを登録する際は c
##### Refs ##### Refs
先程のコードでは `ref` 属性値を使って子のコンポーネントに名前を付けており、`this.ref` でそのコンポーネントを参照しています。`React.findDOMNode(component)` にコンポーネントを指定して呼び出すことで、ブラウザの持つ実際の DOM 要素を取得することが出来ます。 先程のコードでは `ref` 属性値を使って子のコンポーネントに名前を付けており、`this.ref` でそのコンポーネントを参照しています。`ReactDOM.findDOMNode(component)` にコンポーネントを指定して呼び出すことで、ブラウザの持つ実際の DOM 要素を取得することが出来ます。
##### Props としてのコールバック ##### Props としてのコールバック
@ -574,14 +574,14 @@ var CommentBox = React.createClass({
var CommentForm = React.createClass({ var CommentForm = React.createClass({
handleSubmit: function(e) { handleSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var author = React.findDOMNode(this.refs.author).value.trim(); var author = ReactDOM.findDOMNode(this.refs.author).value.trim();
var text = React.findDOMNode(this.refs.text).value.trim(); var text = ReactDOM.findDOMNode(this.refs.text).value.trim();
if (!text || !author) { if (!text || !author) {
return; return;
} }
this.props.onCommentSubmit({author: author, text: text}); this.props.onCommentSubmit({author: author, text: text});
React.findDOMNode(this.refs.author).value = ''; ReactDOM.findDOMNode(this.refs.author).value = '';
React.findDOMNode(this.refs.text).value = ''; ReactDOM.findDOMNode(this.refs.text).value = '';
return; return;
}, },
render: function() { render: function() {

34
docs/tutorial.ko-KR.md

@ -84,7 +84,7 @@ var CommentBox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<CommentBox />, <CommentBox />,
document.getElementById('content') document.getElementById('content')
); );
@ -107,7 +107,7 @@ var CommentBox = React.createClass({displayName: 'CommentBox',
); );
} }
}); });
React.render( ReactDOM.render(
React.createElement(CommentBox, null), React.createElement(CommentBox, null),
document.getElementById('content') document.getElementById('content')
); );
@ -123,11 +123,11 @@ JSX의 사용은 선택적이지만 JSX 문법이 일반 JavsScript보다 사용
일반적인 HTML만 리턴할 수 있는 것은 아닙니다. 여러분이 직접 만든 (또는 다른 사람들이 만들어 놓은) 컴포넌트의 트리를 리턴할 수도 있습니다. 이것이 React를 **조합가능(composable)하게 만듭니다**: 유지보수 가능한 프론트엔드를 위한 핵심 교리(key tenet)지요. 일반적인 HTML만 리턴할 수 있는 것은 아닙니다. 여러분이 직접 만든 (또는 다른 사람들이 만들어 놓은) 컴포넌트의 트리를 리턴할 수도 있습니다. 이것이 React를 **조합가능(composable)하게 만듭니다**: 유지보수 가능한 프론트엔드를 위한 핵심 교리(key tenet)지요.
`React.render()`는 최상위 컴포넌트의 인스턴스를 만들고, 두 번째 인수로 전달받은 DOM 엘리먼트에 마크업을 삽입해 프레임워크를 시작합니다. `ReactDOM.render()`는 최상위 컴포넌트의 인스턴스를 만들고, 두 번째 인수로 전달받은 DOM 엘리먼트에 마크업을 삽입해 프레임워크를 시작합니다.
## 컴포넌트 조합하기 ## 컴포넌트 조합하기
이제 `CommentList``CommentForm`을 위한 뼈대를 구축해 봅시다. 이전과 마찬가지로 단순히 `<div>` 태그 하나 입니다. 파일에 두 컴포넌트를 추가해, 이미 있는 `CommentBox` 선언을 참고로 `React.render`를 호출합시다. 이제 `CommentList``CommentForm`을 위한 뼈대를 구축해 봅시다. 이전과 마찬가지로 단순히 `<div>` 태그 하나 입니다. 파일에 두 컴포넌트를 추가해, 이미 있는 `CommentBox` 선언을 참고로 `ReactDOM.render`를 호출합시다.
```javascript ```javascript
// tutorial2.js // tutorial2.js
@ -289,7 +289,7 @@ var data = [
]; ];
``` ```
이 데이터를 모듈화된 방식으로 `CommentList`에 넣어야 합니다. props을 이용해 데이터를 넘기도록 `CommentBox``React.render()` 호출 코드를 수정합시다. 이 데이터를 모듈화된 방식으로 `CommentList`에 넣어야 합니다. props을 이용해 데이터를 넘기도록 `CommentBox``ReactDOM.render()` 호출 코드를 수정합시다.
```javascript{7,15} ```javascript{7,15}
// tutorial9.js // tutorial9.js
@ -305,7 +305,7 @@ var CommentBox = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CommentBox data={data} />, <CommentBox data={data} />,
document.getElementById('content') document.getElementById('content')
); );
@ -341,7 +341,7 @@ var CommentList = React.createClass({
```javascript{3} ```javascript{3}
// tutorial11.js // tutorial11.js
React.render( ReactDOM.render(
<CommentBox url="comments.json" />, <CommentBox url="comments.json" />,
document.getElementById('content') document.getElementById('content')
); );
@ -460,7 +460,7 @@ var CommentBox = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CommentBox url="comments.json" pollInterval={2000} />, <CommentBox url="comments.json" pollInterval={2000} />,
document.getElementById('content') document.getElementById('content')
); );
@ -495,14 +495,14 @@ var CommentForm = React.createClass({
var CommentForm = React.createClass({ var CommentForm = React.createClass({
handleSubmit: function(e) { handleSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var author = React.findDOMNode(this.refs.author).value.trim(); var author = ReactDOM.findDOMNode(this.refs.author).value.trim();
var text = React.findDOMNode(this.refs.text).value.trim(); var text = ReactDOM.findDOMNode(this.refs.text).value.trim();
if (!text || !author) { if (!text || !author) {
return; return;
} }
// TODO: 서버에 요청을 전송합니다 // TODO: 서버에 요청을 전송합니다
React.findDOMNode(this.refs.author).value = ''; ReactDOM.findDOMNode(this.refs.author).value = '';
React.findDOMNode(this.refs.text).value = ''; ReactDOM.findDOMNode(this.refs.text).value = '';
return; return;
}, },
render: function() { render: function() {
@ -525,7 +525,7 @@ React는 카멜케이스 네이밍 컨벤션으로 컴포넌트에 이벤트 핸
##### Refs ##### Refs
우리는 자식 컴포넌트의 이름을 지정하기 위해 `ref` 어트리뷰트를, 컴포넌트를 참조하기 위해 `this.refs`를 사용합니다. 고유한(native) 브라우저 DOM 엘리먼트를 얻기 위해 `React.findDOMNode(component)`를 호출할 수 있습니다. 우리는 자식 컴포넌트의 이름을 지정하기 위해 `ref` 어트리뷰트를, 컴포넌트를 참조하기 위해 `this.refs`를 사용합니다. 고유한(native) 브라우저 DOM 엘리먼트를 얻기 위해 `ReactDOM.findDOMNode(component)`를 호출할 수 있습니다.
##### props으로 콜백 처리하기 ##### props으로 콜백 처리하기
@ -578,14 +578,14 @@ var CommentBox = React.createClass({
var CommentForm = React.createClass({ var CommentForm = React.createClass({
handleSubmit: function(e) { handleSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var author = React.findDOMNode(this.refs.author).value.trim(); var author = ReactDOM.findDOMNode(this.refs.author).value.trim();
var text = React.findDOMNode(this.refs.text).value.trim(); var text = ReactDOM.findDOMNode(this.refs.text).value.trim();
if (!text || !author) { if (!text || !author) {
return; return;
} }
this.props.onCommentSubmit({author: author, text: text}); this.props.onCommentSubmit({author: author, text: text});
React.findDOMNode(this.refs.author).value = ''; ReactDOM.findDOMNode(this.refs.author).value = '';
React.findDOMNode(this.refs.text).value = ''; ReactDOM.findDOMNode(this.refs.text).value = '';
return; return;
}, },
render: function() { render: function() {

34
docs/tutorial.md

@ -85,7 +85,7 @@ var CommentBox = React.createClass({
); );
} }
}); });
React.render( ReactDOM.render(
<CommentBox />, <CommentBox />,
document.getElementById('content') document.getElementById('content')
); );
@ -108,7 +108,7 @@ var CommentBox = React.createClass({displayName: 'CommentBox',
); );
} }
}); });
React.render( ReactDOM.render(
React.createElement(CommentBox, null), React.createElement(CommentBox, null),
document.getElementById('content') document.getElementById('content')
); );
@ -124,11 +124,11 @@ The `<div>` tags are not actual DOM nodes; they are instantiations of React `div
You do not have to return basic HTML. You can return a tree of components that you (or someone else) built. This is what makes React **composable**: a key tenet of maintainable frontends. You do not have to return basic HTML. You can return a tree of components that you (or someone else) built. This is what makes React **composable**: a key tenet of maintainable frontends.
`React.render()` instantiates the root component, starts the framework, and injects the markup into a raw DOM element, provided as the second argument. `ReactDOM.render()` instantiates the root component, starts the framework, and injects the markup into a raw DOM element, provided as the second argument.
## Composing components ## Composing components
Let's build skeletons for `CommentList` and `CommentForm` which will, again, be simple `<div>`s. Add these two components to your file, keeping the existing `CommentBox` declaration and `React.render` call: Let's build skeletons for `CommentList` and `CommentForm` which will, again, be simple `<div>`s. Add these two components to your file, keeping the existing `CommentBox` declaration and `ReactDOM.render` call:
```javascript ```javascript
// tutorial2.js // tutorial2.js
@ -293,7 +293,7 @@ var data = [
]; ];
``` ```
We need to get this data into `CommentList` in a modular way. Modify `CommentBox` and the `React.render()` call to pass this data into the `CommentList` via props: We need to get this data into `CommentList` in a modular way. Modify `CommentBox` and the `ReactDOM.render()` call to pass this data into the `CommentList` via props:
```javascript{7,15} ```javascript{7,15}
// tutorial9.js // tutorial9.js
@ -309,7 +309,7 @@ var CommentBox = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CommentBox data={data} />, <CommentBox data={data} />,
document.getElementById('content') document.getElementById('content')
); );
@ -345,7 +345,7 @@ Let's replace the hard-coded data with some dynamic data from the server. We wil
```javascript{3} ```javascript{3}
// tutorial11.js // tutorial11.js
React.render( ReactDOM.render(
<CommentBox url="/api/comments" />, <CommentBox url="/api/comments" />,
document.getElementById('content') document.getElementById('content')
); );
@ -460,7 +460,7 @@ var CommentBox = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<CommentBox url="/api/comments" pollInterval={2000} />, <CommentBox url="/api/comments" pollInterval={2000} />,
document.getElementById('content') document.getElementById('content')
); );
@ -495,14 +495,14 @@ Let's make the form interactive. When the user submits the form, we should clear
var CommentForm = React.createClass({ var CommentForm = React.createClass({
handleSubmit: function(e) { handleSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var author = React.findDOMNode(this.refs.author).value.trim(); var author = this.refs.author.value.trim();
var text = React.findDOMNode(this.refs.text).value.trim(); var text = this.refs.text.value.trim();
if (!text || !author) { if (!text || !author) {
return; return;
} }
// TODO: send request to the server // TODO: send request to the server
React.findDOMNode(this.refs.author).value = ''; this.refs.author.value = '';
React.findDOMNode(this.refs.text).value = ''; this.refs.text.value = '';
return; return;
}, },
render: function() { render: function() {
@ -525,7 +525,7 @@ Call `preventDefault()` on the event to prevent the browser's default action of
##### Refs ##### Refs
We use the `ref` attribute to assign a name to a child component and `this.refs` to reference the component. We can call `React.findDOMNode(component)` on a component to get the native browser DOM element. We use the `ref` attribute to assign a name to a child component and `this.refs` to reference the component. We can call `ReactDOM.findDOMNode(component)` on a component to get the native browser DOM element.
##### Callbacks as props ##### Callbacks as props
@ -578,14 +578,14 @@ Let's call the callback from the `CommentForm` when the user submits the form:
var CommentForm = React.createClass({ var CommentForm = React.createClass({
handleSubmit: function(e) { handleSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var author = React.findDOMNode(this.refs.author).value.trim(); var author = this.refs.author.value.trim();
var text = React.findDOMNode(this.refs.text).value.trim(); var text = this.refs.text.value.trim();
if (!text || !author) { if (!text || !author) {
return; return;
} }
this.props.onCommentSubmit({author: author, text: text}); this.props.onCommentSubmit({author: author, text: text});
React.findDOMNode(this.refs.author).value = ''; this.refs.author.value = '';
React.findDOMNode(this.refs.text).value = ''; this.refs.text.value = '';
return; return;
}, },
render: function() { render: function() {

4
downloads.md

@ -55,8 +55,8 @@ All scripts are also available via [CDNJS](https://cdnjs.com/libraries/react/).
If you're using an npm-compatible packaging system like browserify or webpack, you can use the `react` package. After installing it using `npm install react` or adding `react` to `package.json`, you can use React: If you're using an npm-compatible packaging system like browserify or webpack, you can use the `react` package. After installing it using `npm install react` or adding `react` to `package.json`, you can use React:
```js ```js
var React = require('react'); var React = require('react-dom');
React.render(...); ReactDOM.render(...);
``` ```
If you'd like to use any [add-ons](/react/docs/addons.html), use `var React = require('react/addons');` instead. If you'd like to use any [add-ons](/react/docs/addons.html), use `var React = require('react/addons');` instead.

42
js/react-dom.js

@ -0,0 +1,42 @@
/**
* ReactDOM v0.14.0-rc1
*
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
*/
// Based off https://github.com/ForbesLindesay/umd/blob/master/template.js
;(function(f) {
// CommonJS
if (typeof exports === "object" && typeof module !== "undefined") {
module.exports = f(require('react'));
// RequireJS
} else if (typeof define === "function" && define.amd) {
define(['react'], f);
// <script>
} else {
var g
if (typeof window !== "undefined") {
g = window;
} else if (typeof global !== "undefined") {
g = global;
} else if (typeof self !== "undefined") {
g = self;
} else {
// works providing we're not in "use strict";
// needed for Java 8 Nashorn
// see https://github.com/facebook/react/issues/3037
g = this;
}
g.ReactDOM = f(g.React);
}
})(function(React) {
return React.__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
});

13586
js/react.js

File diff suppressed because it is too large

2
tips/02-inline-styles.ko-KR.md

@ -17,7 +17,7 @@ var divStyle = {
msTransition: 'all' // 'ms'는 유일한 소문자 벤더 프리픽스(vendor prefix)입니다 msTransition: 'all' // 'ms'는 유일한 소문자 벤더 프리픽스(vendor prefix)입니다
}; };
React.render(<div style={divStyle}>Hello World!</div>, mountNode); ReactDOM.render(<div style={divStyle}>Hello World!</div>, mountNode);
``` ```
스타일 키는 JS에서 DOM 노드의 프로퍼티에 접근하는 것과 일관성있도록 camelCased 형식입니다. (예를 들어 `node.style.backgroundImage`) [`ms`를 제외한](http://www.andismith.com/blog/2012/02/modernizr-prefixed/) 벤더 프리픽스는 대문자로 시작해야 합니다. 따라서 `WebkitTransition`은 대문자 "W"를 사용합니다. 스타일 키는 JS에서 DOM 노드의 프로퍼티에 접근하는 것과 일관성있도록 camelCased 형식입니다. (예를 들어 `node.style.backgroundImage`) [`ms`를 제외한](http://www.andismith.com/blog/2012/02/modernizr-prefixed/) 벤더 프리픽스는 대문자로 시작해야 합니다. 따라서 `WebkitTransition`은 대문자 "W"를 사용합니다.

2
tips/02-inline-styles.md

@ -17,7 +17,7 @@ var divStyle = {
msTransition: 'all' // 'ms' is the only lowercase vendor prefix msTransition: 'all' // 'ms' is the only lowercase vendor prefix
}; };
React.render(<div style={divStyle}>Hello World!</div>, mountNode); ReactDOM.render(<div style={divStyle}>Hello World!</div>, mountNode);
``` ```
Style keys are camelCased in order to be consistent with accessing the properties on DOM nodes from JS (e.g. `node.style.backgroundImage`). Vendor prefixes [other than `ms`](http://www.andismith.com/blog/2012/02/modernizr-prefixed/) should begin with a capital letter. This is why `WebkitTransition` has an uppercase "W". Style keys are camelCased in order to be consistent with accessing the properties on DOM nodes from JS (e.g. `node.style.backgroundImage`). Vendor prefixes [other than `ms`](http://www.andismith.com/blog/2012/02/modernizr-prefixed/) should begin with a capital letter. This is why `WebkitTransition` has an uppercase "W".

6
tips/03-if-else-in-JSX.ko-KR.md

@ -11,10 +11,10 @@ JSX 안에서는 `if-else` 구문이 작동하지 않습니다. 왜냐하면 JSX
```js ```js
// 이 JSX 코드는 // 이 JSX 코드는
React.render(<div id="msg">Hello World!</div>, mountNode); ReactDOM.render(<div id="msg">Hello World!</div>, mountNode);
// 다음의 JS 코드로 변환됩니다. // 다음의 JS 코드로 변환됩니다.
React.render(React.createElement("div", {id:"msg"}, "Hello World!"), mountNode); ReactDOM.render(React.createElement("div", {id:"msg"}, "Hello World!"), mountNode);
``` ```
그렇기 때문에 `if` 구문을 넣을 수 없습니다. 다음 예제를 봅시다. 그렇기 때문에 `if` 구문을 넣을 수 없습니다. 다음 예제를 봅시다.
@ -30,7 +30,7 @@ React.createElement("div", {id: if (condition) { 'msg' }}, "Hello World!");
이는 올바른 JS가 아닙니다. 대신 삼항 연산자를 사용할 수 있습니다. 이는 올바른 JS가 아닙니다. 대신 삼항 연산자를 사용할 수 있습니다.
```js ```js
React.render(<div id={condition ? 'msg' : ''}>Hello World!</div>, mountNode); ReactDOM.render(<div id={condition ? 'msg' : ''}>Hello World!</div>, mountNode);
``` ```
삼항 연산자가 충분하지 않다면 JSX구문 밖에서 `if` 문을 사용해 어떤 컴포넌트가 사용될 지 결정할 수 있습니다. 삼항 연산자가 충분하지 않다면 JSX구문 밖에서 `if` 문을 사용해 어떤 컴포넌트가 사용될 지 결정할 수 있습니다.

6
tips/03-if-else-in-JSX.md

@ -11,10 +11,10 @@ next: self-closing-tag.html
```js ```js
// This JSX: // This JSX:
React.render(<div id="msg">Hello World!</div>, mountNode); ReactDOM.render(<div id="msg">Hello World!</div>, mountNode);
// Is transformed to this JS: // Is transformed to this JS:
React.render(React.createElement("div", {id:"msg"}, "Hello World!"), mountNode); ReactDOM.render(React.createElement("div", {id:"msg"}, "Hello World!"), mountNode);
``` ```
This means that `if` statements don't fit in. Take this example: This means that `if` statements don't fit in. Take this example:
@ -30,7 +30,7 @@ React.createElement("div", {id: if (condition) { 'msg' }}, "Hello World!");
That's not valid JS. You probably want to make use of a ternary expression: That's not valid JS. You probably want to make use of a ternary expression:
```js ```js
React.render(<div id={condition ? 'msg' : ''}>Hello World!</div>, mountNode); ReactDOM.render(<div id={condition ? 'msg' : ''}>Hello World!</div>, mountNode);
``` ```
If a ternary expression isn't robust enough, you can use `if` statements outside of your JSX to determine which components should be used: If a ternary expression isn't robust enough, you can use `if` statements outside of your JSX to determine which components should be used:

2
tips/06-style-props-value-px.ko-KR.md

@ -11,7 +11,7 @@ next: children-props-type-ko-KR.html
```js ```js
var divStyle = {height: 10}; // "height:10px" 로 렌더링 됩니다. var divStyle = {height: 10}; // "height:10px" 로 렌더링 됩니다.
React.render(<div style={divStyle}>Hello World!</div>, mountNode); ReactDOM.render(<div style={divStyle}>Hello World!</div>, mountNode);
``` ```
더 자세한 이야기는 [Inline Styles](/react/tips/inline-styles-ko-KR.html)를 참고해 주시기 바랍니다. 더 자세한 이야기는 [Inline Styles](/react/tips/inline-styles-ko-KR.html)를 참고해 주시기 바랍니다.

2
tips/06-style-props-value-px.md

@ -11,7 +11,7 @@ When specifying a pixel value for your inline `style` prop, React automatically
```js ```js
var divStyle = {height: 10}; // rendered as "height:10px" var divStyle = {height: 10}; // rendered as "height:10px"
React.render(<div style={divStyle}>Hello World!</div>, mountNode); ReactDOM.render(<div style={divStyle}>Hello World!</div>, mountNode);
``` ```
See [Inline Styles](/react/tips/inline-styles.html) for more info. See [Inline Styles](/react/tips/inline-styles.html) for more info.

4
tips/07-children-props-type.ko-KR.md

@ -20,7 +20,7 @@ var GenericWrapper = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<GenericWrapper><span/><span/><span/></GenericWrapper>, <GenericWrapper><span/><span/><span/></GenericWrapper>,
mountNode mountNode
); );
@ -43,7 +43,7 @@ var GenericWrapper = React.createClass({
} }
}); });
React.render(<GenericWrapper>hello</GenericWrapper>, mountNode); ReactDOM.render(<GenericWrapper>hello</GenericWrapper>, mountNode);
``` ```
`this.props.children`을 쉽게 다룰 수 있도록 [React.Children utilities](/react/docs/top-level-api-ko-KR.html#react.children)를 제공하고 있습니다. `this.props.children`을 쉽게 다룰 수 있도록 [React.Children utilities](/react/docs/top-level-api-ko-KR.html#react.children)를 제공하고 있습니다.

4
tips/07-children-props-type.md

@ -20,7 +20,7 @@ var GenericWrapper = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<GenericWrapper><span/><span/><span/></GenericWrapper>, <GenericWrapper><span/><span/><span/></GenericWrapper>,
mountNode mountNode
); );
@ -43,7 +43,7 @@ var GenericWrapper = React.createClass({
} }
}); });
React.render(<GenericWrapper>hello</GenericWrapper>, mountNode); ReactDOM.render(<GenericWrapper>hello</GenericWrapper>, mountNode);
``` ```
To make `this.props.children` easy to deal with, we've provided the [React.Children utilities](/react/docs/top-level-api.html#react.children). To make `this.props.children` easy to deal with, we've provided the [React.Children utilities](/react/docs/top-level-api.html#react.children).

4
tips/08-controlled-input-null-value.ko-KR.md

@ -14,9 +14,9 @@ next: componentWillReceiveProps-not-triggered-after-mounting-ko-KR.html
아래 짧은 예제가 있습니다; 렌더링 후, 잠시 뒤에 텍스트를 고칠 수 있는 상태가 되는 것을 확인 하실 수 있습니다. 아래 짧은 예제가 있습니다; 렌더링 후, 잠시 뒤에 텍스트를 고칠 수 있는 상태가 되는 것을 확인 하실 수 있습니다.
```js ```js
React.render(<input value="hi" />, mountNode); ReactDOM.render(<input value="hi" />, mountNode);
setTimeout(function() { setTimeout(function() {
React.render(<input value={null} />, mountNode); ReactDOM.render(<input value={null} />, mountNode);
}, 1000); }, 1000);
``` ```

4
tips/08-controlled-input-null-value.md

@ -14,9 +14,9 @@ You might have run into a problem where `value` is specified, but the input can
The snippet below shows this phenomenon; after a second, the text becomes editable. The snippet below shows this phenomenon; after a second, the text becomes editable.
```js ```js
React.render(<input value="hi" />, mountNode); ReactDOM.render(<input value="hi" />, mountNode);
setTimeout(function() { setTimeout(function() {
React.render(<input value={null} />, mountNode); ReactDOM.render(<input value={null} />, mountNode);
}, 1000); }, 1000);
``` ```

6
tips/10-props-in-getInitialState-as-anti-pattern.ko-KR.md

@ -26,7 +26,7 @@ var MessageBox = React.createClass({
} }
}); });
React.render(<MessageBox name="Rogers"/>, mountNode); ReactDOM.render(<MessageBox name="Rogers"/>, mountNode);
``` ```
더 나은 코드: 더 나은 코드:
@ -38,7 +38,7 @@ var MessageBox = React.createClass({
} }
}); });
React.render(<MessageBox name="Rogers"/>, mountNode); ReactDOM.render(<MessageBox name="Rogers"/>, mountNode);
``` ```
(복잡한 로직이라, 메소드에서 계산하는 부분만 떼어 왔습니다.) (복잡한 로직이라, 메소드에서 계산하는 부분만 떼어 왔습니다.)
@ -63,5 +63,5 @@ var Counter = React.createClass({
} }
}); });
React.render(<Counter initialCount={7}/>, mountNode); ReactDOM.render(<Counter initialCount={7}/>, mountNode);
``` ```

6
tips/10-props-in-getInitialState-as-anti-pattern.md

@ -26,7 +26,7 @@ var MessageBox = React.createClass({
} }
}); });
React.render(<MessageBox name="Rogers"/>, mountNode); ReactDOM.render(<MessageBox name="Rogers"/>, mountNode);
``` ```
Better: Better:
@ -38,7 +38,7 @@ var MessageBox = React.createClass({
} }
}); });
React.render(<MessageBox name="Rogers"/>, mountNode); ReactDOM.render(<MessageBox name="Rogers"/>, mountNode);
``` ```
(For more complex logic, simply isolate the computation in a method.) (For more complex logic, simply isolate the computation in a method.)
@ -62,5 +62,5 @@ var Counter = React.createClass({
} }
}); });
React.render(<Counter initialCount={7}/>, mountNode); ReactDOM.render(<Counter initialCount={7}/>, mountNode);
``` ```

2
tips/11-dom-event-listeners.ko-KR.md

@ -36,7 +36,7 @@ var Box = React.createClass({
} }
}); });
React.render(<Box />, mountNode); ReactDOM.render(<Box />, mountNode);
``` ```
컴포넌트가 마운트 되고 DOM 표현을 가지게 되면 `componentDidMount`가 호출됩니다. 일반적인 DOM 이벤트를 붙이는 곳으로 여기를 종종 사용합니다. 컴포넌트가 마운트 되고 DOM 표현을 가지게 되면 `componentDidMount`가 호출됩니다. 일반적인 DOM 이벤트를 붙이는 곳으로 여기를 종종 사용합니다.

2
tips/11-dom-event-listeners.md

@ -36,7 +36,7 @@ var Box = React.createClass({
} }
}); });
React.render(<Box />, mountNode); ReactDOM.render(<Box />, mountNode);
``` ```
`componentDidMount` is called after the component is mounted and has a DOM representation. This is often a place where you would attach generic DOM events. `componentDidMount` is called after the component is mounted and has a DOM representation. This is often a place where you would attach generic DOM events.

2
tips/12-initial-ajax.ko-KR.md

@ -44,7 +44,7 @@ var UserGist = React.createClass({
} }
}); });
React.render( ReactDOM.render(
<UserGist source="https://api.github.com/users/octocat/gists" />, <UserGist source="https://api.github.com/users/octocat/gists" />,
mountNode mountNode
); );

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save