最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • react的高阶函数高阶组件的学习笔记

    正文概述 掘金(Nirvana丶)   2020-12-27   540

    一、高阶函数(Higher-Order Function)

    在javascript中,函数是一等公民。函数可以作为另一个函数的参数传递。高阶函数,是在一个函数里面返回一个函数。 我要用到a函数实现a与b相加的功能。

    var a=function(a,b){
     	return a+b
    }
    a(1,2)
    

    现在用高阶函数把两个参数分开传入。这个时候用const就会失效,const受到了{}的限制。这种方式称为柯里化

    var b=function(a){
     return function(b){
         return a+b
         }
    }
    b(1)(2)
    
    //计算本金和利息
    var sum =function(principal){
     return function(interest){
       return principal+princlipal*interest
     }
    }
    sum(30000)(.61)
    
    //定义本金
    var _3w=sum(30000)
    
    _3w(061)
    

    二、高阶组件(Higher-Order Component)

    利用组件传入组件,可以实现相当于vue中的插槽功能,切记高阶组件的第一层必须是一个函数组件。也就是说在一个组件中,外层用组件函数内层可以随意选择,这时候外层的函数组件就成为了一个普通的函数。

    高阶组件的使用方法和高阶函数相同,将一个组件作为另一个组件的入参,这个时候需要创建两个js演示 首先在pages包下面创建一个layout组件包其中含有一个MainLayout.js文件还有一个index.js。 react的高阶函数高阶组件的学习笔记 在MainLayout中,将外层函数组件作为函数,返回两个参数用类组件。

    import React, { Component } from 'react'
    
     const MainLayout = Childrencomponrnt=>{
         return title=>{
            return class Layout extends Component {
                    render() {
                        return (
                            <div>
                                <header>{title}</header>
                                <hr/>
                                <content>
                                    <Childrencomponrnt/>
                                </content>
                                <hr/>
                                <footer>
                                    这个是尾部的版权哦 &copy;
                                </footer>
                            </div>
                        )
                    }
                }
         }
       
        
    }
    export default MainLayout
    

    在index中,写一个类组件,将整个类组件作为一个参数传入

    import React, { Component } from 'react'
    import MainLayout from './Layout/MainLayout.js'
    
    class One extends Component {
        render() {
            return (
                <div>
                    
                </div>
            )
        }
    }
    
    // 这里是把One作为一个参数传入
    export default MainLayout(One)('传参的标题')
    

    然后添加个样式 react的高阶函数高阶组件的学习笔记 最后的结果 react的高阶函数高阶组件的学习笔记 样式部分需要注意的是,在用less的写法中calc("")的里面一定要添加,才能实现计算。>是less的子元素选择器。


    起源地下载网 » react的高阶函数高阶组件的学习笔记

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元