本篇文章為大家展示了es6怎么在react中使用,內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
在云霄等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),成都全網(wǎng)營銷,外貿(mào)網(wǎng)站建設(shè),云霄網(wǎng)站建設(shè)費(fèi)用合理。
具體內(nèi)容如下所示:
import React,{Component} from 'react'; class RepeatArrayextends Component{ constructor() { super(); } render(){ const names = ['Alice', 'Emily', 'Kate']; return ({ names.map((name) =>{return); } } export default RepeatArray;Hello, {name}!;} ) }
二、ol與li的實(shí)現(xiàn)
import React,{Component} from 'react'; class RepeatLiextends Component{ render(){ return ({ this.props.children.map((child)=>{return
); } } class RepeatArray extends Component{ constructor() { super(); } render(){ return (- {child}
}) }); } } export default RepeatArray;hello world
三、從服務(wù)端獲取數(shù)據(jù)
import React,{Component} from 'react'; class UserGistextends Component{ constructor(){ super(); this.state={ username:'', lastGistUrl:'' } } componentWillMount(){ $.get(this.props.source, function(result){ var lastGist = result[0]; //if (this.isMounted()) { this.setState({ username: lastGist.owner.login, lastGistUrl: lastGist.html_url }); //} }.bind(this)); } render(){ return({this.state.username} .. here); } } class RepeatArrayextends Component{ constructor() { super(); } render(){ return (); } } export default RepeatArray;
四、初始化STATE
class Videoextends React.Component{ constructor(props){ super(props); this.state = { loopsRemaining: this.props.maxLoops, }; } }
五、解構(gòu)與擴(kuò)展操作符
在給子組件傳遞一批屬性更為方便了。下面的例子把 className 以外的所有屬性傳遞給 div 標(biāo)簽
class AutoloadingPostsGridextends React.Component{ render() { var { className, ...others, // contains all properties of this.props except for className } = this.props; return (); } }
使用 react 開發(fā)最常見的問題就是父組件要傳給子組件的屬性較多時(shí)比較麻煩
class MyComponentextends React.Component{ //假設(shè)MyComponent已經(jīng)有了name和age屬性 render(){ return () } }
使用擴(kuò)展操作符可以變得很簡單
class MyComponentextends React.Component{ //假設(shè)MyComponent已經(jīng)有了name和age屬性 render(){ return () } }
上述方式是將父組件的所有屬性都傳遞下去,如果這其中有些屬性我不需要傳遞呢?也很簡單
class MyComponentextends React.Component{ //假設(shè)MyComponent有很多屬性,而name屬性不需要傳遞給子組件 var {name,...MyProps}=this.props; render(){ return () } }
上述方法最常用的場景就是父組件的 class 屬性需要被單獨(dú)提取出來作為某個(gè)元素的 class ,而其他屬性需要傳遞給子組件
六、創(chuàng)建組件
import React,{Component} from "react"; class MyComponentextends Component{ //組件內(nèi)部代碼 }
七、State/Props/PropTypes
es6 允許將 props 和 propTypes 當(dāng)作靜態(tài)屬性在類外初始化
class MyComponentextends React.Component{} MyComponent.defaultProps={ name:"SunnyChuan", age:22 }; MyComponent.propTypes={ name:React.PropTypes.string.isRequired, age:React.PropTypes.number.isRequired };
es7 支持直接在類中使用變量表達(dá)式
class MyComponentextends React.Component{ static defaultProps={ name:"SunnyChuan", age:22 } static propTypes={ name:React.PropTypes.string.isRequired, age:React.PropTypes.number.isRequired } }
state 和前兩個(gè)不同,它不是靜態(tài)的
class MyComponentextends React.Component{ static defaultProps={ name:"SunnyChuan", age:22 } state={ isMarried:false } static propTypes={ name:React.PropTypes.string.isRequired, age:React.PropTypes.number.isRequired } }
七、當(dāng)你構(gòu)建通用容器時(shí),擴(kuò)展屬性會(huì)非常有用
function App1(){ return; } function App2() { const props = {firstName: 'Ben', lastName: 'Hector'}; return ; }
八、使用es6的計(jì)算屬性代替
this.setState({ [name]:value }) //代替 var partialState = {}; partialState[name] = value; this.setState(partialState);
上述內(nèi)容就是es6怎么在react中使用,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。