gpt4 book ai didi

reactjs - 在reactjs中记住实例变量的最佳方法是什么

转载 作者:行者123 更新时间:2023-12-02 21:29:14 26 4
gpt4 key购买 nike

我在 react 中有一个基本类,当我点击时它会绘制一个矩形

Conq.R.Canvas = React.createClass

displayName: 'Canvas'

componentDidMount: ->
@setState $(@getDOMNode()).offset()

onMouseDown: (e) ->

canvas = @getDOMNode()
context = canvas.getContext('2d')
context.fillRect e.clientX - @state.left, e.clientY - @state.top, 10, 10

render: ->

<canvas onMouseDown={@onMouseDown}></canvas>

效果很好。通常是在状态中存储诸如 offset 之类的东西,还是应该将其设置为 this 或将其放入 props 中?惯例是什么?为什么?

不要责怪我存储它,如果它没有偏移,它可能是我存储的其他值。我的基本问题是我应该将仅在实例中使用的局部变量放在哪里,为什么?

最佳答案

如果更改它会导致以下任一情况,则应该是状态/属性:

  • 渲染以输出不同的结果
  • componentWillUpdate 表现不同
  • componentDidUpdate 表现不同

在这种情况下 this.top 就可以了。

关于reactjs - 在reactjs中记住实例变量的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26007743/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com