import React from 'react' class TestComponent extends React.Component { // 1.定义组件状态 state = { // 在这里可以定义各种属性,全都都是当前组件的状态 name: 'Ken', } // 事件回调 changeName = () => { // 3.修改 state 中的状态 name // 注意:不可以直接做赋值修改,必须通过一个方法 setState this.setState({ name: 'King', }) } // 2.使用状态 render() { return (
TestComponent当前的名字为:{this.state.name}
) } } function App() { return (
) } /* 总结 1.编写组件其实就是编写原生 JS 类或者函数 2.定义状态必须通过 state 实例属性的方法提供一个对象,名称是固定的就叫做 state 3. 修改state中的任何属性都不可以通知直接赋值,必须走 setState 方法,这个方法来自于继承得到 4.这里的 this 关键词很容易出现指向错误的问题,上面的写法是最推荐和最规范的,没有 this 指向问题 */ export default App