React更新元素 基础
React元素创建后无法修改其内容和属性。唯一的办法是创建新的元素,传入ReactDOM.render()方法
三种实现形式:
1.整体替换
function tick () {
const ele=(
<div>
<h1>更新元素</h1>
<h2>现在是:{new Date().toLocaleTimeString()}</h2>
</div>) ;
ReactDOM.render(
ele,
document.getElementById('example')
)
}
setInterval(tick,1000);
2.将要展示的部分封装起来
function Clocks (props) {
return (
<div>
<h1>Hello,world</h1>
<h2>现在是{props.date.toLocaleString()}</h2>
</div>
)
}
function tick () {
ReactDOM.render(
<Clock date={new Date()}>,
document.getElementById('example')
)
}
setInterval(tick,1000)
解析:每隔1秒执行tick 触发Clock 将参数传递到Clock函数中,修改html
3.创建React.Component的类,封装要显示的元素
class Clock extends React.Component{
render(){
return (
<div>
<h1>Hello world</h1>
<h2>现在是{this.props.date}</h2>
</div>
)
}
}
function tick (){
ReactDOM.render(
<Clock date={new Date()}/>,
document.getElementById('example')
)
}
setInterval(tick,1000)
React会对比元素内容的先后不同,渲染的时候只更新不同的部分
React更新元素 基础的更多相关文章
- php Hash Table(四) Hash Table添加和更新元素
HashTable添加和更新的函数: 有4个主要的函数用于插入和更新HashTable的数据: int zend_hash_add(HashTable *ht, char *arKey, uint n ...
- React Native 入门基础知识总结
中秋在家闲得无事,想着做点啥,后来想想,为啥不学学 react native.在学习 React Native 时, 需要对前端(HTML,CSS,JavaScript)知识有所了解.对于JS,可以看 ...
- 获取更新元素文本html()
html() 方法,获取元素文本,包含元素标签,也可以设置元素的文本值(包含元素标签),还可以包含子元素标签.相当于JavaScript中的innerHTML. <!DOCTYPE html&g ...
- 获取更新元素文本text()
text() 方法,获取元素文本,也可以设置元素的文本值.相 <!DOCTYPE html> <html lang="en"> <head> & ...
- BAT 前端开发面经 —— 吐血总结 前端相关片段整理——持续更新 前端基础精简总结 Web Storage You don't know js
BAT 前端开发面经 —— 吐血总结 目录 1. Tencent 2. 阿里 3. 百度 更好阅读,请移步这里 聊之前 最近暑期实习招聘已经开始,个人目前参加了阿里的内推及腾讯和百度的实习生招聘, ...
- react的新手基础知识笔记
<!DOCTYPE html> <html> <head> <script src="../build/react.js">< ...
- 【温故知新】—— React/Redux/React-router4基础知识&独立团Demo
前言:React专注View层,一切皆组件:全部使用ES6语法,最新版本为React16. Redux是专注于状态管理的库,和react解耦:单一状态,单向数据流.[独立团github地址] 一.Re ...
- react 子元素修改父元素值的一个偏方,虽然简单,但是不建议用,
this.state.obj = { name: "小明" } <Zizujian obj={this.state.obj} /> // 子组件这样修改父元素的值 // ...
- react复习总结(1)--react组件开发基础
这次是年后第一次发文章,也有很长一段时间没有写文章了.准备继续写.总结是必须的. 最近一直在业余时间学习和复习前端相关知识点,在一个公司呆久了,使用的技术不更新,未来真的没有什么前景,特别是我们这种以 ...
随机推荐
- springcloud学习总结
最近花了一周的时间对springcloud的常用组件进行了一些入门级的了解,也破天荒的积极起来用博客进行了学习的记录,只是希望以后用的时候能对自己有所帮助,也希望给跟我一样对springcloud毫无 ...
- python的format格式化
使用方法: '{}bbccc'.format(aa) = aabbcc, 用来代替python2中的%,即替换. 1.通过位置来指定替换 In [2]: '{0},{1}'.format('a', ...
- js判断是刷新页面还是关闭页面
<body onunload=fclose() onload=fload() onbeforeunload=bfunload()> <script> var s = " ...
- python 参数传递 传值还是传引用
个人推测结论: 可变对象传引用,不可变对象传值 python里的变量不同于c中地址储值模型 a=100 b=100 print(id(a),id(b),a==b,a is b) #8790877986 ...
- SSM 与三层架构的关系的简单理解
NOTE 1:Spring MVC 编写在表示层,代替了servlet.主要作用就是接收用户的请求,完成响应或转发; NOTE 2:Mybatis 编写在dao层,代替了原来的JDBC,就要就是用来跟 ...
- springboot笔记1(转载于puresmile)
构建微服务:Spring boot 入门篇 什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...
- s21day09 python笔记
s21day09 python笔记 一.三元运算(三目运算) 用途:用于简单的if条件语句 基本结构 v = 前面 if 条件 else 后面 #如果条件为真,v = 前面,否则,v = 后面 &qu ...
- SQLI DUMB SERIES-11
(1)检测构造方式 由此看出输入的用户名以及密码都被一对单引号所包含. 方法一: (2) 模拟真实环境,以用户的身份登录. (3)用burp抓包.开启抓包,输入用户名和密码,会自动跳到这个页面,右键, ...
- configparse模块和hashlib模块
# import configparser # # config = configparser.ConfigParser() #config = {} # config['DEFAULT'] = {' ...
- 关于函数式编程(Functional Programming)
初学函数式编程,相信很多程序员兄弟们对于这个名字熟悉又陌生.函数,对于程序员来说并不陌生,编程对于程序员来说也并不陌生,但是函数式编程语言(Functional Programming languag ...