簡體   English   中英

Hello World在JSBin上不起作用

[英]Hello World doesn't work on JSBin

我簡單的hello world嘗試有什么問題? 是JSBin

class Hello extends React.Component {
  render() {
    return(
      <h1>Hello {this.props.name}</h1>
    )
  }
}

React.render(
  <Hello name="World!"/>,
  document.getElementById('name');
)

您使用模塊ReactDOM渲染到DOM,與React分開:

ReactDOM.render(<Hello name="World!" />, document.getElementById("name"));

另外,您的分號放錯了位置。 記住, ReactDOM是一個不同的模塊。 根據文檔

react-dom軟件包提供了特定於DOM的方法,可在您的應用程序的頂層使用...


ReactDOM.render

 render( ReactElement element, DOMElement container, [function callback] ) 

這是0.14引入的最新更改。 他們將React分解為一個核心庫和DOM適配器。 現在通過ReactDOM.render()完成渲染

由於您使用的是版本15.1.0,因此應該使用ReactDOM.render(),並且為此,需要在您的jsbin html中包括react-dom作為依賴項,如下所示:

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>

同樣在ReactDOM.render您需要將分號ReactDOM.render();之后ReactDOM.render(); 而不是里面。

這是工作片段。

 class Hello extends React.Component { render() { return( <h1>Hello {this.props.name}</h1> ) } } ReactDOM.render( <Hello name="World!"/>, document.getElementById('name') ); 
 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width"> <title>JS Bin</title> </head> <body> <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script> <div id="name"></div> </body> </html> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM