美文网首页
2.定义组件的两种方式

2.定义组件的两种方式

作者: __疯子__ | 来源:发表于2020-05-19 16:11 被阅读0次

教程1-14完整项目地址 https://github.com/x1141300029/react-Todos.git

1.使用箭头函数的方式进行定义

import React from 'react'
import ReactDOM from 'react-dom'
const createApp=(props)=>{
    return (
        <div>
            {/*只要在jsx中插入js代码,就加入大括号即可 注释也一样*/}
            <h1>Hello world</h1>
            <span>title:{props.title}</span>
        </div>
    )
};
const app=createApp({
    title:"Hello React"
});
ReactDOM.render(app,document.getElementById("root"));

import React from 'react'
import ReactDOM from 'react-dom'

const App=(props)=>{
    return (
        <div>
            {/*只要在jsx中插入js代码,就加入大括号即可 注释也一样*/}
            <h1>Hello world</h1>
            <span>title:{props.title}</span>
        </div>
    )
};
ReactDOM.render(<App title={"新标题"}/>,document.getElementById("root"));

2.创建类组件
2.1.创建文件 src/components/App.js

import React from 'react'

//React组件必须继承于 React.Component
class App extends React.Component {

    //渲染
    render() {
        return (
            <div>
                <h1>你好</h1>
                {this.props.title}
            </div>
        )
    }
}
export default App

2.2.在index.js中引用App组件

import React from 'react'
import ReactDOM from 'react-dom'
import App from './component/App.js'
ReactDOM.render(<App title={"新标题"}/>,document.getElementById("root"));

3.嵌套组件

import React from 'react'
import ReactDOM from 'react-dom'
const Hello=()=>{
  return (
    <div>Hello</div>
  )
}
const App=(props)=>{
    return (
        <div>
            <Hello/>
            <span>title:{props.title}</span>
        </div>
    )
};
ReactDOM.render(<App title={"新标题"}/>,document.getElementById("root"));

JSX原理

//jsx
<div className="app" id="appRoot">
  <h1 className="title">JSX原理</h1>
  <p>JSX原理</p>
</div>

将JSX转换为JSON如下

{
    "tag" :"div",
  "attrs":{
    "className":"app",
    "id":"appRoot"
  },
  "children":[
        {
      "tag" :"h1",
      "attrs":{
        "className":"title"
      },
      "children":["jsx原理"]
    },
    {
      "tag" :"p",
      "attrs":{},
      "children":["JSX原理"]
    }
  ]
}

相关文章

  • React创建组件的两种方式

    1.创建组件两种方式 方式1.函数式组件 方式2.函数式组件--使用ES6的class来定义一个组件 本文目的仅仅...

  • 2.定义组件的两种方式

    教程1-14完整项目地址 https://github.com/x1141300029/react-Todos.g...

  • Vue组件(compoent)

    自定义组件有两种方式1.全局组件,2.局部组件 全局组件:我们可以这样理解,一个vue组件就是一个vue实例 组件...

  • 十二、定义组件

    一、组件component 1.什么是组件? 2.定义组件的方式 方式2:直接创建组件

  • React 如何区别class和function?

    React定义组件的方式有两种,class和function。如下: 函数式定义: class方式定义: 当我们需...

  • Vue.js组件基础知识

    1.TodoList的基本编写与实现结果 2.定义组件(1)定义全局组件 使用方式: (2)定义局部组件 定义局部...

  • Vue基础(六)--组件及组件间的通讯

    1.什么是组件 扩展HTML元素,封装可重用的代码。 组件是自定义元素(对象)。 2.定义组件的方式 方式1:先创...

  • vue-vue2.0中组件模板的定义

    1.两种常用定义方式如下: (1)申明组件->定义模板->调用 (2)使用json来定义

  • 初识React

    定义组件的两种方式 函数定义 类定义 使用React时,值得注意的点: 所有的React组件必须像纯函数那样使用它...

  • react学习(10)组件实例三大核心:state

    知识点 1:定义组件的两种方式:函数式和类式。函数式适用于简单组件的定义,类式适用于复杂组件的定义。而简单与复杂的...

网友评论

      本文标题:2.定义组件的两种方式

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