通過運算式、函數給React組件屬性賦值

來源:互聯網
上載者:User

標籤:

一、需求

當有傳屬性name的值時,則顯示Hello "name",否則顯示Hello World

二、4種方式的代碼實現

1.通過三元運算子

<!DOCTYPE html><html lang="zh-cn"><head>    <meta charset="UTF-8">    <title>Document</title></head><body>    <script src="./react-0.13.2/build/react.js"></script>    <script src="./react-0.13.2/build/JSXTransformer.js"></script><script type="text/jsx">var style = {color : "red",border: "1px #000 solid",};var HelloWorld = React.createClass({render: function(){return <p>你好,{this.props.name ? this.props.name : "World!"} </p>;}});React.render(<div style={style}><HelloWorld name="李小龍!"></HelloWorld></div>, document.body);</script></body></html>

  

2.通過變數

<!DOCTYPE html><html lang="zh-cn"><head>    <meta charset="UTF-8">    <title>Document</title></head><body>    <script src="./react-0.13.2/build/react.js"></script>    <script src="./react-0.13.2/build/JSXTransformer.js"></script><script type="text/jsx">var style = {color : "red",border: "1px #000 solid",};var HelloWorld = React.createClass({getName : function(){if(this.props.name)return this.props.nameelsereturn "World!"},render: function(){var name = this.getName();return <p>你好, {name}</p>;}});React.render(<div style={style}><HelloWorld name="李小龍!"></HelloWorld></div>, document.body);</script></body></html>

  

3.直接在屬性調用函數

<!DOCTYPE html><html lang="zh-cn"><head>    <meta charset="UTF-8">    <title>Document</title></head><body>    <script src="./react-0.13.2/build/react.js"></script>    <script src="./react-0.13.2/build/JSXTransformer.js"></script><script type="text/jsx">var style = {color : "red",border: "1px #000 solid",};var HelloWorld = React.createClass({getName : function(){if(this.props.name)return this.props.nameelsereturn "World!"},render: function(){return <p>你好, {this.getName()}</p>;}});React.render(<div style={style}><HelloWorld name="李小龍!"></HelloWorld></div>, document.body);</script></body></html>

  

4.用與運算

<!DOCTYPE html><html lang="zh-cn"><head>    <meta charset="UTF-8">    <title>Document</title></head><body>    <script src="./react-0.13.2/build/react.js"></script>    <script src="./react-0.13.2/build/JSXTransformer.js"></script><script type="text/jsx">var style = {color : "red",border: "1px #000 solid",};var HelloWorld = React.createClass({render: function(){return <p>你好, {this.props.name || "World!"}</p>;}});React.render(<div style={style}><HelloWorld name="李小龍!"></HelloWorld></div>, document.body);</script></body></html>

  

三、運行結果

通過運算式、函數給React組件屬性賦值

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.