React 学习笔记(4)函数式组件

261 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第4天,点击查看活动详情

函数式组件

函数式组件就是一个函数返回一个html文档。目前React推荐写函数组件代替类组件,因为代码量更少,用起来比较轻,更符合react函数式的本质,生命周期函数更简介,生命周期钩子函数后面会了解到

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>学习React</title>
</head>

<body>
    <div id="test"></div>

    <script type="text/javascript" src="../js/react.development.js"></script>
    <script type="text/javascript" src="../js/react-dom.development.js"></script>
    <script type="text/javascript" src="../js/babel.min.js"></script>
    <script type="text/babel">
        function Who() {
            return <h2>我是云南的,云南怒江的,怒江泸水市,泸水市六库,六库傈僳族,傈僳族是这样叫,乌鸦叫作阿南,青蛙叫作欧巴,老公叫作搓趴,老婆叫作搓嘛,香菜叫作野穴,红薯叫作阿梦,老虎叫作喇嘛,黄瓜叫作阿布。南瓜叫作阿普,鸡蛋叫作嘛啊耶夫</h2>
        }
        ReactDOM.render(<Who />, document.getElementById('test'))

    </script>
</body>

</html>

效果如图:

image.png

下载 chrome 插件

需要下载facebook开发的名为React Developer Tools的chrme插件,安装之后可以在浏览器调试窗口看到React组件的详细信息。
可以在谷歌浏览器商店直接下载安装,不能访问谷歌商店的可以使用国内浏览器搜一下,找安装包安装

image.png

安装之后在浏览器右上角就会有一个小图标。假如当前访问的网站开发的颜色就会有变化,不同的颜色不一样

image.png

然后打开今天开发的网站打开调试窗口就会看见这个ComponentProfiler的选项

image.png

点击Component会看到组件属性和react版本 image.png profiler应该是性能分析之类的东西,现在初学阶段只使用了一个函数组件,什么信息也有没有显示

ReactDom.render()

ReactDom.render()这个方法有两个参数,第一个是创建的组件,第二个是插入组件的目标位置。 执行只有发什么了什么事?

  • 1.React解析组件标签,找到了Who组件
  • 2.发现组件是使用函数定义的,随后调用该函数,讲返回的虚拟Dom转换为真实的Dom渲染到页面中

总结

  • 函数式组件首字母必须是大写
  • 函数式组件必须有返回值
  • ReactDom.render() 的第一个参数组件的名字且必须闭合。