- 引入包的时候,
react.development
必须得在react-dom.development
的上面 - 创建虚拟DOM得是大写字母,且以V开头
- 创建虚拟DOM
const VDOM = React.createElement(标签名, 标签体属性, 标签体内容); //例: const VDOM = React.createElement('h1', {id:'title'}, 'Hello React'); // 使用jsx const VDOM = <h1 id = 'title'>Hello, React</h1>
- 可以利用小括号多行写,其实就是原生js写法的一种语法糖,利用babel进行的转码
- 虚拟DOM就是一个一般的对象,虚拟DOM的属性要比真实的DOM属性多,因为虚拟DOM是react内部在用,无需真实DOM上那么多的属性。虚拟DOM最终会被React转化为真实DOM,呈现在页面上
- XML早期用于储存和传输数据
- jsx语法规则
· 定义虚拟DOM
,不要写引号
· 标签中混入JS
表达式时要用{}
· 样式的类名指定不要用class,要用className
· 内联样式,要用style = {{key: value}}
的形式去写
· 标签必须闭合<input type = "text"/>
或<input type = "text"></input>
· 标签首字母
(1)若小写字母开头,则将标签转为html中同名元素,若html中无该标签对应的同名元素,则报错
(2)若大写字母开头,react就去渲染对应的组件,若组件没有定义,则报错 - 如果你给React传递了一个数组,react会自动帮你遍历这个数组,如果你给的时对象,无法遍历
- 执行了
ReactDOM.render(<MyComponent/>, document.getElementById('test'))
之后,发生了什么?
React解析组件标签,找到了MyComponent组件
发现组件是使用函数定义的,随后调用该函数,将返回的虚拟DOM转化为真实DOM,随后呈现在页面上 - 类中的一般方法放在了类的原型对象上,供实例使用
- 执行了
ReactDOM.render(<MyComponent/>, document.getElementById('test'))
之后,发生了什么?
React解析组件标签,找到了MyComponent组件
发现组件是使用类定义的,随后new出该类的实例,并且通过实例调用到原型上的render方法将返回的虚拟DOM转化为真实DOM,随后呈现在页面上 - React实现
- 把原型上的,挂在实例上,起了一个名字叫changewether
- .
- 箭头函数会保存外部环境,就是React自动创建的那个对象
- 批量传递props
- 展开运算符
不能把展开运算符直接运用到一个对象上
- 对props进行限制
- 类式组件中的构造器与props
- 函数式组件使用props
02-21
04-18
04-16
07-21
07-21
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交