如何訪問CoffeeScript中事件處理程序的參數?如何在CoffeeScript事件處理程序中獲取參數
我在Dashing中創建了一個顏色選擇器控件(http://dashing.io)。 顏色選擇器基於Spectrum(https://bgrins.github.io/spectrum/#events),並使用顏色參數發佈onchange事件。
當用戶單擊調色板中的顏色時,顏色名稱/代碼由Spectrum顏色選擇器小部件在前端生成。
這裏的現有ColorPicker的代碼是什麼樣子的摘錄:
change: function(color) {
color.toHexString(); // i.e. #ff0000
}
拾色器的實施指南是在這裏: https://bgrins.github.io/spectrum/#events
在我的CoffeeScript文件,我有
$(@node).on 'change', (evt) => @handleChanged evt
postState: (newState) ->
$.post '/openhab/dispatch',
deviceId: @get('device'),
command: newState
handleChanged: (evt) ->
@postState("test")
我希望能夠訪問handleChanged函數中的Spectrum顏色選擇器的顏色參數,並將其傳遞給postState函數以代替「測試」佔位符。
隨意批評 - 當我通常在C工作的嵌入式設備的寄存器級別上使用Coffeescript這種高級Coffeescript,Ruby on Rails環境時,我百分之百地迷失了方向。
除了Pradeep的回答,顏色值由Spectrum窗口小部件在客戶端生成。這裏是代碼: hide:function(color){ color.toHexString(); //#ff0000 } – user4165247