父组件传递给子组件的方法是固定语法吗?

父组件传递给子组件的方法是固定语法吗?

getListItems() {

        //父子组件的概念

        //父组件通过属性的形式向子组件传参

        return this.state.list.map((value, index) => {

            return (

                <TodoItem

                    content={value}

                    key={index}

                    index={index}

                    deleteFunction={this.handleItemClick}

                />

            )

        })

    }

​deleteFunciton={this.handleItemClick}这个方法是固定语法吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,解答如下:

父子组件的传值,形式是固定的。比如父组件想给子组件传递content这个数据,就如下这样写:

http://img1.sycdn.imooc.com//climg/60cd9c13091dbcb907070510.jpg

注意等号左侧是“想传递的数据”,它的名字可以自定义,可以叫content、也可以起成其他的名字。等号右侧则是“该数据的具体值”,值可以是父组件中的某一个数据,也可以是其他的。

同理,如果想传index,则写法如下:

http://img1.sycdn.imooc.com//climg/60cd9cbc096db2bf06770384.jpg

deleteFunciton={this.handleItemClick}这个写法,和上面是一样的,也是在传数据,数据的名字是deleteFunciton,值是父组件的handleItemClick方法:

http://img1.sycdn.imooc.com//climg/60cd9d280959f11e08670517.jpg

http://img1.sycdn.imooc.com//climg/60cd9def09b5f38708360538.jpg

http://img1.sycdn.imooc.com//climg/60cd9d8f09911b1d08390547.jpg

祝学习愉快!

  • leepulse 提问者 #1

    就是说,deleteFunciton这个数据名是自定义,最好是一个语义化的自命名是吧?

    比如:deleteFun = {this.handleItemClick}

    只是this.handleItemClick这个语法是固定的,对应谁就要获取谁


    2021-06-19 15:44:21
  • 好帮手慕久久 回复 提问者 leepulse #2

    同学你好,理解是对的。

    deleteFunciton这个数据名是自定义的(等号左侧),最好起成语义化的,比如可以换成deleteFun 。由于deleteFunciton的值是父组件中的一个方法(函数),所以要使用“this.xxx”的形式获取(规定语法),对应代码“this.handleItemClick”。

    祝学习愉快!

    2021-06-19 15:54:32
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师