首頁 > web前端 > js教程 > 主體

Props屬性如何設定

清浅
發布: 2020-09-08 10:05:55
原創
4525 人瀏覽過

Props屬性如何設定

Props(屬性)

是元件本身的屬性,props中的屬性與元件屬性一一對應。負責傳遞訊息

1、父元件向子元件傳遞資料

//定义webName组件,负责输出名字
var webName = React.createClass({
  render : function() {
    return <h1>{this.props.webname} </h1>;
  }
})
//定义webLink组件,负责跳转链接
var webLink = React.createClass({
  render : function() {
    return <a href={this.props.weblink}>{this.props.weblink}</a>
  }
})
 
var webShow = React.createClass({
  render : function(){
    <div>
      <webName webname={this.props.webname}/>
      <webLink weblink={this.props.weblink}/>
    </div>
  }
})
 
//渲染
ReactDom.render{
  return function() {
    <webShow webname = "hellp" weblink = "www.baidu.com" />,
      document.getElementById("container")
  }
}
登入後複製

2、設定預設屬性

透過static defaultProps = {}這個固定的格式來為一個元件加入預設屬性

export default class MyView extends Component {
  static defaultProps = {
    age: 12,
    sex: &#39;男&#39;
  }
 
  render() {
    return <Text
        style={{backgroundColor: &#39;cyan&#39;}}>
      你好{this.props.name}{&#39;\n&#39;}年龄{this.props.age}{&#39;\n&#39;}性别{this.props.sex}
    </Text>
  }
}
登入後複製

#3、屬性檢查

透過 static propTypes = {} 這個固定格式來設定屬性的格式,比如說我們將age 設定為number 類型

var title = React.createClass({
  propTypes={
    //title类型必须是字符串
    title : React.PropTypes.string.isRequired
  },
  render : function() {
    return <h1>{this.props.title}</h1>
  }
})
登入後複製

延展運算元... 是ES6 語法的新特性。 ...this.porps,一種語法,將父元件中全部屬性複製給子元件

2 父元件向子元件傳遞呼叫函數,用來通知父元件訊息。

3 用來作為子元件邏輯判斷的標示,渲染的樣式等

4 children,不是跟元件對應的屬性,表示元件所有子節點。

//定义webName组件,负责输出名字
var listCompont = React.createClass({
  render : function() {
    return
    <ul>
      {
        /**
         * 列表项内容不固定,需要在创建模版时确定。利用this.props.children传递显示内容
         * 获取到内容后,需要遍历children,逐项设置。利用React.Children.map方法
         **/
 
        React.Children.map(this.props.children,function(child) {
            //child是遍历得到父组件子节点
            return <li>{child}</li>;
        })
      }
    </ul>;
  }
})
//渲染
ReactDom.render{
  {
    <listCompont>
      <h1>hello</h1>
      <a href="link">"www.baidu.com"</a>
    </listCompont>
  },
document.getElementById("container")
}
登入後複製

總結:以上就是這篇文章的全部內容了,希望對大家有幫助

以上是Props屬性如何設定的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板