美文网首页
初识函数式组件

初识函数式组件

作者: 转移到CSDN名字丹丹的小跟班 | 来源:发表于2021-01-20 10:59 被阅读0次

react里面有两种创建组件的方法,函数式创建组件便是其中一种

特点:1.创建函数式组件结果会返回一个新的jsx元素(也就是当组件的jsx结构)

  1. 函数式组件的props参数存储的值是一个对象,包含了调取组件时传递的属性值(如果不传则为一个空对象)

示例:
创建函数式组件

//用到jsx就必须导入react
import React from 'react'

export default function FormalDialog(props) {
    // 解构赋值拿到需要的数据
    let {title, children} = props
    console.log(props)
    return <section className="box">
        <div className="header">
            {/* 判断text属性是否有值,有则显示,无则显示默认文字 */}
            {title.text ? title.text : '提示'}
            {/* 判断type属性值是否为‘success’,有则显示,无则显示默认文字 */}
            {title.type === 'success' ? '成功' : null}
        </div>
        <div className="content">
            {/* 判断children属性是否有值,有则显示,无则显示默认文字 */}
            {children ? children : '这是我的第一个react组件'}
        </div>
        <div className="footer">
            <button>确定</button>
            <button>删除</button>
        </div>
    </section>
}

调用函数式组件

import React from 'react';
import ReactDOM from 'react-dom';
// 调用函数式组件
import Dialog from './component/Dialog.js'
ReactDOM.render(<div>
{/*创建标签属性值title,如果值不为字符串要使用jsx语法用{}包起来*/}
    <FormalDialog title={{text: "😀", type: 'success'}}>
{/*传递children值(可以为子标签,字符。)*/}
        <h4>哈哈哈</h4>
        <h4>嘻嘻嘻</h4>
    </FormalDialog>
</div>, document.getElementById("root"))

注意:在调用createElement方法执行当中(例如: createELement(<Dialog/>)),遇到一个组件,返回的对象当中type不再是一个字符串(标签名),而是一个函数一个类,但属性还是存在于props中。

相关文章

  • 初识函数式组件

    react里面有两种创建组件的方法,函数式创建组件便是其中一种 特点:1.创建函数式组件结果会返回一个新的jsx元...

  • React 函数式组件

    简单函数式组件 使用 hook 的函数式组件

  • React入门(二)

    组件 1.函数式组件 什么是函数式组件创建一个函数,只要函数中返回一个新的JSX元素,则为函数式组件 调用组件可以...

  • React - 类组件创建

    React创建组件有两种方式 函数式组件 类组件函数式组件已经学过,现在看下类组件怎么写。 函数式组件和类组件区别...

  • React 面向组件编程

    函数式组件// 创建函数式组件function MyComponent() {console.log(this)/...

  • 函数式组件

    函数式组件 函数式组件,即无状态,无法实例化,内部没...

  • Render渲染函数和JSX

    render函数 h( 元素,属性,值 ) 中 h 不能少 使用 list组件中调用 函数式组件 定义函数式组件 ...

  • recompose函数式库 + ( git? ) + ( vo

    (一) recompose 函数式组件,高阶组件库 (1) withState 因为函数式组件中没有state,但...

  • Vue.js 2函数式组件学习

    什么是函数式组件? 函数式组件就是函数是组件,组件是函数,它的特征是没有内部状态、没有生命周期钩子函数、没有thi...

  • 1-5 函数式组件

    demo1 - 函数式组件 demo2 - 类组件 demo3 - 函数式组件传参 组件里面套组件 - 复合组件 ...

网友评论

      本文标题:初识函数式组件

      本文链接:https://www.haomeiwen.com/subject/eoqqzktx.html