zoukankan      html  css  js  c++  java
  • React高阶组件

    高阶组件

    增强组件的功能
    本身是一个函数
    参数是一个组件,返回值也是一个组件
    传入一个组件返回一个组件
    
    非侵入  不需要组件内部状态
    侵入    需要组件内部状态

    高阶函数

    增强函数的功能
    传入一个函数返回一个函数

    Vuex,redux 跨组件通讯

    Vuex事件系统
    
    同步 
        mutatinon 
        commit
    
    异步 
        action
        dispatch
    
    VueX,redux(store)=>组件=>action=>Vuex

    Ant design UI库/组件库

    高阶组件

    接受一个组件,返回一个新的组件
    非侵入式 ...this.props
    侵入式 super
    
    super当成方法  指向this指针
    super当成对象  指向父类

    继承

    函数继承  闭包=块级作用域
        prototype
        
    类的继承
        extends

    非侵入式

    import React from 'react'
    
    // 非侵入式组件
    export default (WrapCompoennt)=>{
        return class extends React.Component {
            render() {
                return (
                    <div>
                        <div style={{background:'skyblue',padding:'10px',display:'flex'}}>
                            <p>请下载淘票票</p>
                            <a href="https://h5.m.taopiaopiao.com/app/moviemain/pages/index/index.html?from=outer">下载</a>
                        </div>
                        <WrapCompoennt {...this.props}/>
                    </div>
                )
            }
        }
    }

    侵入式

    import React from 'react'
    import Loading from '../common/Loading'
    // 侵入式组件
    export default (WrapCompoennt)=>{
        return class extends WrapCompoennt{
            render() {
                if(this.state.showLoading){
                    return <Loading></Loading>
                }else{
                    return super.render();
                }
            }
        }
    }
  • 相关阅读:
    第四周作业
    第四周上机练习
    第一次作业
    第八周作业
    第八周上机练习
    第七周作业
    第五次上机练习
    第六周作业
    第四次上机练习
    第三次上机练习
  • 原文地址:https://www.cnblogs.com/2oex/p/9569184.html
Copyright © 2011-2022 走看看