当前位置: 首页 > news >正文

react项目搭建

1 react 环境 执行命令

npm init -y
npm i react --save
npm i react-dom -save

2 创建js 目录

把node-modules/react/umd/react.development.js拷贝到js文件夹下,
把node-modules/react-dom/umd/react-dom.development.js拷贝到js文件夹下。

创建index.html文件—之后
先引入react.development.js,在引入react-dom.development.js
在这里插入图片描述

3 babel => es6 转化es5 解析jsx (js +xml )

npm i babel-standalone --save

script type=“text/babel”
var node = 
 div> 哈哈哈</div>
 ReactDOM.render(node, document.getElementById('box'))  ReactDOM.render(jsx表达式, 挂载的DOM节点)
 
 另一种是创建节点
 var node = React.createElement('div', {title: "创建的节点div", 'hello world'}
ReactDOM.render(node, document.getElementById('box'))

4 {hah} => {插值表达式}

假如 设置var arr = [ ‘aa’, ‘bb’, ‘cc’]可以直接用{arr} = aabbbcc

但是对象 obj = {a:1,b:2} 就必须是 {obj.a},{obj.b}

对象不能直接用插值表达式。

事件函数

<button onClick={toggle}> 点击事件  </button>
定义全局的事件函数变量
var toggle=()=>{
visible = !visible
}

点击事件

onClick={toggle()}// onClick={toggle()=>{alert('弹出')}}
<div style={{display:visible?"block":"none"}}/> // 三木运算

5

onClick 大写
 styke={key:value}

原始的–>react 的
class --> className
for --htmlFor
value -->defaultValue
checked–>defaultChecked
注释 {/**/}
vue的是v-for v-…List
6 遍历列表推荐map 方法
便利多个列表可封装为函数
用无状态组件去渲染列表
在这里插入图片描述

7 遍历对象,组件字母要大写 ShowList

var 组件=(props)=>{ // 无状态组件
props就可以接受父组件传过来的参数
return 表达式
}	

<组件 属性={值} />

Object.entries 对象的键值对形成的数组
Object.values 对象的值对形成的数组
Object.keys 对象的键形成的数组
eg: 
var obj = {a:1, b:2, v:3}
ReactDOM.render(<div>
{
Object.keys(obj).map((item)=>{
return <li key={item}>   
{obj[item]}
</li>
})
}
</div>)

用props 
var obj2 = {"a":'qq', "b":'cc', "f": ‘ff’} 
var ShowObject = (props)=>{
return <ul>
{
Object.keys(props.obj).map((item)=> {
return <li key={item}>{item} =====> {obj[item]}</li>
}
)}
</ul>
}
ReactDOM.render(
<div>
<ShowObject obj= {obj } />
</div>,document.querySelector(#box")
)

相关文章:

  • mybatis3.0 配置等值连接两种方式:resultMap和resulttype
  • react官方脚手架安装
  • 怎么用ChemDraw 15.1 Pro绘制彩色结构
  • react实现打印功能
  • 关于CreateProcess函数一些经验
  • 前端解决跨域 cors
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 斐波那契数列 的计算规则
  • react 中 props 和 state的相同与不同
  • 理解java Web项目中的路径问题
  • react 中千万不要在render里调用this.setState
  • 系统界面图片
  • HDU 3068 回文串-Manacher
  • reactJS的props.children.map函数来遍历会收到异常提示,为什么?应该如何遍历?
  • Elasticsearch 2.3.3 搜索引擎的elasticsearch-jdbc插件安装
  • 0x05 Python数据分析,Anaconda八斩刀
  • 3.7、@ResponseBody 和 @RestController
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • Java Agent 学习笔记
  • Javascripit类型转换比较那点事儿,双等号(==)
  • Linux下的乱码问题
  • Promise面试题2实现异步串行执行
  • Redis在Web项目中的应用与实践
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • session共享问题解决方案
  • 电商搜索引擎的架构设计和性能优化
  • - 概述 - 《设计模式(极简c++版)》
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 浅谈web中前端模板引擎的使用
  • raise 与 raise ... from 的区别
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • !!Dom4j 学习笔记
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #Spring-boot高级
  • #vue3 实现前端下载excel文件模板功能
  • #我与Java虚拟机的故事#连载11: JVM学习之路
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (附源码)ssm基于微信小程序的疫苗管理系统 毕业设计 092354
  • (附源码)ssm智慧社区管理系统 毕业设计 101635
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (篇九)MySQL常用内置函数
  • (原創) 如何安裝Linux版本的Quartus II? (SOC) (Quartus II) (Linux) (RedHat) (VirtualBox)
  • (转载)Linux 多线程条件变量同步
  • ******IT公司面试题汇总+优秀技术博客汇总
  • .Net Remoting常用部署结构
  • .NET 中小心嵌套等待的 Task,它可能会耗尽你线程池的现有资源,出现类似死锁的情况
  • .net(C#)中String.Format如何使用
  • .Net的C#语言取月份数值对应的MonthName值
  • .Net转Java自学之路—SpringMVC框架篇六(异常处理)
  • /bin/bash^M: bad interpreter: No such file ordirectory
  • @开发者,一文搞懂什么是 C# 计时器!