加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ReAct 常用 的属性

发布时间:2020-12-15 04:45:08 所属栏目:百科 来源:网络整理
导读:组件的属性可以在组件类的 this.props 对象上获取 this.props 对象的属性与组件的属性一一对应,但是有一个例外,就是 this.props.children 属性。它表示组件的所有子节点 这里需要注意, this.props.children 的值有三种可能:如果当前组件没有子节点,它就


组件的属性可以在组件类的 this.props 对象上获取

this.props 对象的属性与组件的属性一一对应,但是有一个例外,就是 this.props.children 属性。它表示组件的所有子节点


这里需要注意, this.props.children 的值有三种可能:如果当前组件没有子节点,它就是 undefined ;如果有一个子节点,数据类型是 object ;如果有多个子节点,数据类型就是 array 。所以,处理 this.props.children 的时候要小心


React 提供一个工具方法React.Children来处理 this.props.children 。我们可以用 React.Children.map 来遍历子节点,而不用担心 this.props.children 的数据类型是 undefined 还是 object。更多的 React.Children 的方法,请参考官方文档


此外,getDefaultProps 方法可以用来设置组件属性的默认值。


但是,有时需要从组件获取真实 DOM 的节点,这时就要用到 ref 属性(查看demo07)。

var MyComponent = React.createClass({
  handleClick: function() {
    this.refs.myTextInputfocus);
  },
  render{
    return (
      <div>
        <input type="text" ref"myTextInput" /"button" value"Focus the text input" onClick={this.handleClick} >
      </div>
    }
;

ReactDOMrender(
  <MyComponent >getElementById('example')
;
	 var InputText = React.createClass({  
       render: function() { 
		 var LabelElement = React.createElement("label",null,this.props.label);
		 if(this.props.label==null)
		 {
			 LabelElement="";
		 }	   
         return (
			<div className="span12 field-box">
				{LabelElement}
				<input className="span9" id={this.props.id} type="text"  placeholder={this.props.placeholder}/>
			</div>
		 );  
       }  
     });
 
<InputSelect label="State:">
<option value="AK" >Alaska</option>
<option value="HI" >Hawaii</option>
<option value="CA" >California</option>
<option value="NV" >Nevada</option>
<option value="OR" >Oregon</option>
<option value="WA" >Washington</option>
<option value="AZ" >Arizona</option>
</InputSelect>


组件与html混用

var InputSelect = React.createClass({ 
render: function() {  
return (
<div className="span12 field-box">
<label>{this.props.label}</label>
<div className="ui-select span5">
<select>
     
{this.props.children}
  
</select>
</div>
</div>
);  
}  
});

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读