React first Day

环境搭建

 react  react-dom webpack

react-api

 react jsx语法
 jsx支持ECAMscript 所有语法 与自身
 但是js不支持jsx语法所以要安装相关依赖  
 运行npm i  bable-preset-react -D 安装
 
 **1、通过 自定义变量的形式来渲染dom通过React.createElement()

let mydiv = React.createElement('div',{className:'current',id:'mydiv'},'this is my first div!');

 **2、jsx语法方式 直接像写html方式创建dom元素但是本质是转换成通过React.createElement()方式创建dom元素
 let mydiv = <div title = {mytitle} className='current'>
	这是一个div
 {arr}
</div>

**3、属性
	可通过自定义变量的形式来添加属性  <div title = {mytitle} className='current'>
	reactjs中通过{}形式来编写符合js语法规范的代码!

**4、注释
{
    //单行注释形式
}
---------------------
{/* 多行注释形式 */}

**div内部循环创建十个p便签
let mytitle = 'helloworld';
	let arr = [];
for(let i=0;i<10;i++){
	 let p = <p>这是一个p标签</p>
	 arr.push(p);
}
let mydiv = <div title = {mytitle} className='current'>
	这是一个div
	{arr}
	
</div>

**5组件
reactjs中的组件定义其实就是一个构造函数
构造函数中必须要return “一些东西”;
组件的引用就是构造函数的函数名称 加上 html 便签结构 <> 如 <Hello></Hello>
react 对组件的解析是通过构造函数的首字母:
  1、如果首字母不是大写 那么就会按照html的形式来解析
  2、如果首字母是大写 则会解析成一个组件
 function Hello(){
     return <div>
         <h1>
             这是组件中的div子元素h1
         </h1>
     </div>
 }

ReactDom.render(<div>
    这是一个div
    <Hello></Hello>
</div>,document.getElementById('app'))
 结论 构造函数名首字母要大写!

**6、组件传值
假设我们向组件传递一个对象
let person = {
name:‘zhangsan’,
age:18,
sex:‘男’,
hobbies:[‘吃饭’,‘睡觉’,‘打豆豆’]
}
然后我们在引用组件的地方通过{。。。传递对象}来向组件传递参数
…Obj 对象扩散 将对象中的所有参数传递
在组件中就可以查看到传递过来的参数
注意:传递过来的参数在构造函数中的参数列表中要定义porps来接受
而且接收到的参数read-only (只读)

 let person = {
     name:'zhangsan',
     age:18,
     sex:'男',
     hobbies:['吃饭','睡觉','打豆豆']
 }

 import Hello from './components/hello.jsx'

ReactDom.render(<div>
    这是一个div
    <Hello {...person}></Hello>
</div>,document.getElementById('app'))

-------------------------------------------------------------------------
hello.jsx代码
import React from 'react'

function Hello(props){
    console.log(props)
    return <div>
        <h1>
            这是组件中的div子元素h1
        </h1>
        
    </div>
}

export default Hello;

markdown快捷键

撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值