【发布时间】:2016-12-21 07:29:24
【问题描述】:
如何在 CoffeeScript 中访问事件处理程序的参数?
我在 Dashing (http://dashing.io) 中创建了一个颜色选择器小部件。 颜色选择器基于 Spectrum (https://bgrins.github.io/spectrum/#events),并发布带有颜色参数的 onchange 事件。
当用户单击调色板中的颜色时,颜色名称/代码由 Spectrum 颜色选择器小部件在前端生成。
这是现有颜色选择器代码的摘录:
change: function(color) {
color.toHexString(); // i.e. #ff0000
}
颜色选择器的实现指南在这里: https://bgrins.github.io/spectrum/#events
在我的咖啡脚本文件中,我有
$(@node).on 'change', (evt) => @handleChanged evt
postState: (newState) ->
$.post '/openhab/dispatch',
deviceId: @get('device'),
command: newState
handleChanged: (evt) ->
@postState("test")
我希望能够在 handleChanged 函数中访问 Spectrum 颜色选择器的颜色参数,并将其传递给 postState 函数以代替“test”占位符。
请随意批评——当谈到这个高级 Coffeescript、Ruby on Rails 环境时,我 100% 迷失了方向,因为我通常在嵌入式设备的寄存器级别使用 C 语言工作。
【问题讨论】:
-
对 Pradeep 的进一步回答,颜色值是由 Spectrum 小部件在客户端生成的。这是代码:隐藏:函数(颜色){ color.toHexString(); // #ff0000 }
标签: javascript jquery ruby-on-rails coffeescript