You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
732 B

2 years ago
  1. import React from 'react'
  2. // 通过类组件修改状态的方式
  3. class Counter extends React.Component {
  4. // 通过 state 定义组件状态
  5. state = {
  6. count: 0,
  7. }
  8. // 事件回调函数
  9. changeCount = () => {
  10. // 修改 state
  11. // 在 react 体系下,“数据不可变”(就是数据不可以直接通过赋值的方式改变),要用 setState 方法
  12. this.setState({
  13. // count 后面的 value 值是在上一次的 count 值 + 1
  14. count: this.state.count + 1,
  15. })
  16. }
  17. render() {
  18. return <button onClick={this.changeCount}>{this.state.count}</button>
  19. }
  20. }
  21. function App() {
  22. return (
  23. <div>
  24. {/* 渲染 Counter */}
  25. <Counter />
  26. </div>
  27. )
  28. }
  29. export default App