通过命名函数避免coffeescript中的重复代码
avoid duplicate code in coffeescript by named function
我试图在coffeescript中声明一个函数,该函数在文档准备就绪时和用户在搜索栏中键入内容时都会被调用。基本上,有时搜索栏会显示一个值,有时用户会键入该值。我想只在有文本的情况下显示一个"x"图标来清除搜索栏。我能弄清楚如何实现这一点的唯一方法是写两次相同的代码,一次在按键处理程序中,一次是在文档就绪时:
$ ->
$('.clear-search').click ->
$(this).prev('input').val('').focus();
$('span.clear-search').hide()
$('#query_raw_query').keypress ->
if $('#query_raw_query').length > 0
$('span.clear-search').show()
else
$('span.clear-search').hide()
end
if $('#query_raw_query').length > 0
$('span.clear-search').show()
else
$('span.clear-search').hide()
end
我真正想做的只是创建一个名为check_empty之类的函数,并在两个地方都调用它,但我似乎无法使它工作。
谢谢你的帮助。
$ ->
someFunctionName = ->
if $('#query_raw_query').length > 0
$('span.clear-search').show()
else
$('span.clear-search').hide()
end
$('.clear-search').click ->
$(this).prev('input').val('').focus();
$('span.clear-search').hide()
$('#query_raw_query').keypress ->
someFunctionName()
someFunctionName()
相关文章:
- 从桌面读取python文件时高亮显示代码
- 在 Node.js 中处理 coffeescript 代码
- 如何理解由 CoffeeScript 的 'extends' 关键字生成的 JavaScript 代码
- 如何在维护DRY代码的同时运行依赖于js事件的coffeescript方法
- 如何在Rails资产Pipeleine中共享不同coffeescript文件中的代码
- AngularJS教程测试代码没有'我无法使用CoffeeScript代码
- 通过命名函数避免coffeescript中的重复代码
- coffeescript没有执行代码
- 编译coffeescript时添加了不需要的js代码
- 编写简洁代码的CoffeeScript资源
- 如何调试从CoffeeScript生成的Node.js/JavaScript代码
- 调试JS/CoffeeScript代码:事件,回调等
- Coffeescript一直在函数作用域之外编译缩进的代码
- Javascript作用域在coffeescript为谷歌分析代码
- 我如何使用CoffeeScript模拟现有代码
- CoffeeScript代码覆盖率
- 在处理事件时避免样板代码(Backbone, CoffeeScript)
- 防止coffeescript将代码包装成立即调用的函数
- coffeescript代码中不匹配的凹痕
- _.extend 在从 coffeescript 生成的 js 代码中是未定义的