【发布时间】:2014-08-11 22:41:48
【问题描述】:
我一直在用 CoffeeScript 编写代码,因为我一直在用它编写 React。
这是基本结构。
{ div, input } = React.DOM
Outer = React.createClass
render: ->
div { id: 'myApp' },
Inner()
Inner = React.createClass
render: ->
input { id: 'myInput', ref: 'myInput' }
我的 Outer 类上有一个 toggle 方法,该方法是通过按下快捷键触发的。它会切换我的应用的可见性。
当我的应用从隐藏切换到显示时,我想专注于输入。
现在切换方法看起来或多或少像这样:
Outer = React.createClass
render: ->
......
hide: ->
@setState { visible: no }
show: ->
@setState { visible: yes }
$('#myInput').focus() # jQuery
# I want to do something like
# @refs.myInput.getDOMNode().focus()
# But @refs here is empty, it doesn't contain the refs in Inner
toggle: ->
if @state.visible
@hide()
else
@show()
那我该怎么做呢?
【问题讨论】:
标签: coffeescript reactjs