本文主要简述react的开始使用

1.引入js文件

<!-- 1.核心文件 -->
<script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script>
<!-- 2.操作的DOM -->
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<!-- 3.翻译器 将浏览器不识别的JS(es7,es8)语法转化为识别的es5 JSX语法 翻译成浏览器识别的语法 -->
<script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.min.js"></script>

2.整体代码

<body>
<!-- react布局容器 -->
<div id="app"> </div> <script type="text/babel"> // render(布局,容器)
ReactDOM.render(<h1>hello world !</h1>,
//在哪个容器中使用
document.querySelector("#app")
) </script>
</body>

这样,hello world !就会显示在页面上啦!

3.进一步和注意事项

script中的type一定要写type=”text/babel“

<body>
<div id="app2">乌拉</div> <script type="text/babel"> ReactDOM.render( <div><h1>新闻标题</h1>
<p>乌克兰的总统是个好演员</p>
<hr/>{ //单表签一定要加"/",不然直接报错
//JSX语法中< </ 识别为html解析的开始和结束 }
<p>注释{
// 这样写单行注释
// JSX{}识别为JS
// 单括号语法 里面可以写表达式
/*
段落注释 多行注释
*/ }
</p>
</div>,app2)
// 布局比较复杂的时候 用()包起来 简洁 方便阅读
// react和vue2使用组件一样,必须有唯一的根元素,即有<div></div>包裹
// 在app2中有内容的情况下,内容会被覆盖掉
</script>
</body>

4.上方代码简写

上方3的代码越多,看起来越复杂,越紊乱,可以用变量将html接收一下

<body>
<div id="app2">乌拉</div> <script type="text/babel">
//layout 虚拟Dom 一般把虚拟DOM 看作一个js对象(存储了布局的信息)
let layout=(
<div><h1>新闻标题</h1>
<p>乌克兰的总统是个好演员</p>
<hr/>
<p>注释 </p>
</div> ) ReactDOM.render(layout,app2) console.log("lauout:",layout)
console.log("app2:",app2) </script>
</body>
react jsx 虚拟DOM(好像写过了,先有点印象就行...)
1.通过JSX创建虚拟DOM
2.通过 render渲染到界面上 成为真正的DOM(diff算法)
 

最新文章

  1. JDK在Linux系统上安装教程
  2. ReactiveCocoa基础知识内容
  3. ajax给全局变量赋值问题解决
  4. WPF:带复选框CheckBox的树TreeView
  5. zabbix 汉化
  6. chrome浏览器关闭标签页面
  7. Linux命令自己总结
  8. (C/C++) 算法,编程题
  9. 《算法导论》习题解答 Chapter 22.1-5(求平方图)
  10. Delphi EurekaLog 调试内存泄露方法
  11. 算法导论--python--插入排序
  12. Java集合初体验
  13. 基于HTML5 的WebSql本地设备数据库
  14. 软件设计模式详解:OCP原则
  15. 转:使用WebDriver过程中遇到的那些问题
  16. 刨根究底字符编码之十三——UTF-16编码方式
  17. es简单打造站内搜索
  18. 记一次JAVA WEB项目解决XSS攻击的办法(亲测有效)
  19. linux查看端口是否开放
  20. 连接SSH服务器的脚本,自动发送用户名和密码

热门文章

  1. 多种方式告诉你如何计算DM同步数据到TiDB的延时时间
  2. 如何完整删除DISK DRILL
  3. AFN框架
  4. libcurl库openssl编译
  5. curl: (6) Could not resolve host: mirrors.163.com; Unknown error 服务器上解析不了域名,换成ip可以
  6. 淘大大出了composer镜像 -- 给力
  7. Java线程--CompletionService使用
  8. Exception in thread &quot;main&quot; java.lang.UnsupportedClassVersionError: org/apache/zeppelin/server/ZeppelinServer : Unsupported major.minor version 52.0
  9. 系统操作命令实践 下(系统指令+增删改查+vim编辑器)
  10. 员工管理系统+字符编码+Python代码文件操作