react学习笔记
发布时间:2020-12-15 05:19:38 所属栏目:百科 来源:网络整理
导读:组件的生命周期 Mounting:已插入真实 DOM Updating:正在被重新渲染 Unmounting:已移出真实 DOM React 为每个状态都提供了两种处理函数, will 函数在进入状态之前调用, did 函数在进入状态之后调用,三种状态共计五种处理函数。 componentWillMount() compo
组件的生命周期
React 为每个状态都提供了两种处理函数,will 函数在进入状态之前调用,did 函数在进入状态之后调用,三种状态共计五种处理函数。
此外,React 还提供两种特殊状态的处理函数。
组件的生命周期在不同状态下的执行顺序
这些方法的官方介绍 基本模板<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Hello React!</title>
<script src="build/react.js"></script>
<script src="build/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23/browser.min.js"></script>
</head>
<body>
<div id="example"></div>
<script type="text/babel"> ReactDOM.render( <h1>Hello,world!</h1>,document.getElementById('example') ); </script>
</body>
</html>
双向绑定
var NoLink = React.createClass({
getInitialState: function() {
return {message: 'Hello!'};
},handleChange: function(event) {
this.setState({message: event.target.value});
},render: function() {
var message = this.state.message;
return <input type="text" value={message} onChange={this.handleChange} />;
}
});
笔记
propTypes更多验证类型React.createClass({
propTypes: {
// You can declare that a prop is a specific JS primitive. By default,these
// are all optional.
optionalArray: React.PropTypes.array,optionalBool: React.PropTypes.bool,optionalFunc: React.PropTypes.func,optionalNumber: React.PropTypes.number,optionalObject: React.PropTypes.object,optionalString: React.PropTypes.string,// Anything that can be rendered: numbers,strings,elements or an array
// (or fragment) containing these types.
optionalNode: React.PropTypes.node,// A React element.
optionalElement: React.PropTypes.element,// You can also declare that a prop is an instance of a class. This uses
// JS's instanceof operator.
optionalMessage: React.PropTypes.instanceOf(Message),// You can ensure that your prop is limited to specific values by treating
// it as an enum.
optionalEnum: React.PropTypes.oneOf(['News','Photos']),// An object that could be one of many types
optionalUnion: React.PropTypes.oneOfType([
React.PropTypes.string,React.PropTypes.number,React.PropTypes.instanceOf(Message)
]),// An array of a certain type
optionalArrayOf: React.PropTypes.arrayOf(React.PropTypes.number),// An object with property values of a certain type
optionalObjectOf: React.PropTypes.objectOf(React.PropTypes.number),// An object taking on a particular shape
optionalObjectWithShape: React.PropTypes.shape({
color: React.PropTypes.string,fontSize: React.PropTypes.number
}),// You can chain any of the above with `isRequired` to make sure a warning
// is shown if the prop isn't provided.
requiredFunc: React.PropTypes.func.isRequired,// A value of any data type
requiredAny: React.PropTypes.any.isRequired,// You can also specify a custom validator. It should return an Error
// object if the validation fails. Don't `console.warn` or throw,as this
// won't work inside `oneOfType`.
customProp: function(props,propName,componentName) {
if (!/matchme/.test(props[propName])) {
return new Error('Validation failed!');
}
}
},/* ... */
});
参考
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |