1.什么是react?
2.react是facebook开发的前端js库,主要运用组件的思想,可让我们构想可以复用的ui组件。降低代码的耦合度。
3.react的功能是什么?
1.react和vue一样,都是采用了虚拟DOM,而不是真是的dom,虚拟 DOM 最大的优势是 diff 算法,减少 JavaScript 操作真实 DOM 的带来的性能消耗。
2.它可以用服务器端渲染。
3.它遵循单向数据流或数据绑定。
React的一些主要优点是:
React的限制如下:
组件是 React 应用 UI 的构建块。这些组件将整个 UI 分成小的独立并可重用的部分。每个组件彼此独立,而不会影响 UI 的其余部分。
每个React组件强制要求必须有一个 render()。它返回一个 React 元素,是原生 DOM 组件的表示。如果需要渲染多个 HTML 元素,则必须将它们组合在一个封闭标记内,例如 <form>
、<group>
、<div>
等。此函数必须保持纯净,即必须每次调用时都返回相同的结果。
可以用 this.setState()
更新组件的状态。setState(对象,[回调函数])
state = { content: '大熊' }
this.setState({ content: '香香' }, () => { // 通回调获取最新的状态 console.log(this.state.content) })
setState() 的第一个参数也可以是函数,这个函数接收两个参数:第一个参数为更新前的状态值,第二个参数为 props(可获取父级组件传递的数据);当修改状态时涉及到前一个状态值时就可以使用这种形式。
this.setState((state, props) => { console.log(state.content, props) // 返回一个对象 return { content: prev.
- class MyComponent extends React.Component {
- constructor() {
- super();
- this.state = {
- name: 'Maxx',
- id: '101'
- }
- }
- render()
- {
- setTimeout(()=>{this.setState({name:'Jaeha', id:'222'})},2000)
- return (
- <div>
- <h1>Hello {this.state.name}</h1>
- <h2>Your Id is {this.state.id}</h2>
- </div>
- );
- }
- }
- ReactDOM.render(
- <MyComponent/>, document.getElementById('content')
- );
+ '香香' } })
React 组件的生命周期有三个不同的阶段:
一些最重要的生命周期方法是:
Redux 是当今最热门的前端开发库之一。它是 JavaScript 程序的可预测状态容器,用于整个应用的状态管理。使用 Redux 开发的应用易于测试,可以在不同环境中运行,并显示一致的行为。
Redux 由以下组件组成:
React 中的 Action 必须具有 type 属性,该属性指示正在执行的 ACTION 的类型。必须将它们定义为字符串常量,并且还可以向其添加更多的属性。在 Redux 中,action 被名为 Action Creators 的函数所创建。以下是 Action 和Action Creator 的示例:
- function addTodo(text) {
- return {
- type: ADD_TODO,
- text
- }
- }
Reducers 是纯函数,它规定应用程序的状态怎样因响应 ACTION 而改变。Reducers 通过接受先前的状态和 action 来工作,然后它返回一个新的状态。它根据操作的类型确定需要执行哪种更新,然后返回新的值。如果不需要完成任务,它会返回原来的状态。