草庐IT

coffeescript

全部标签

javascript - 在 CoffeeScript 中,是否有一种 'official' 方法可以在运行时而不是在编译时插入字符串?

我的CS类中有一个选项对象,我想在其中保留一些模板:classMyClassoptions:templates:list:""listItem:"#{foo+bar}"#etc...然后我想在代码中稍后插入这些字符串...但是当然这些被编译为"",而foo是未定义的。是否有官方的CoffeeScript方法可以在运行时使用.replace()执行此操作??编辑:我最终写了一个小工具来帮助:#interpolateastringtoreplace{{placeholder}}keyswithpassedobjectvaluesString::interp=(values)->@repla

javascript - CoffeeScript 做,传递参数

以下CoffeeScript代码:do(a)->console.loga生成这个:(function(a){returnconsole.log(a);})(a);如何将值传递给这样的对象?(function(a){returnconsole.log(a);})("hello"); 最佳答案 do(a='hello')->console.loga威尔generate正是你想要的。不过,我不得不承认我看不出这样做有什么意义。如果您真的希望a在该范围内采用字面值'hello',那么为什么要创建另一个范围?a是声明为a='hello'的普通

javascript - 解除绑定(bind)主干 View 事件

我有下降事件哈希-events:'click#someButton:'someFunction'关闭View我试过close:$("#someButton").unbind("click")和`close:$("#someButton").remove()`但是someFunction仍然不止一次被触发。如何从按钮上取消绑定(bind)此事件?我也试过$(@el).find("#someButton").unbind("click")aswell 最佳答案 Backbone.jsView事件被委托(delegate)给View的el

javascript - Angularjs 打破了 coffeescript 函数表达式

我正在努力将AngularJs集成到一个示例Nodejs应用程序中。我的Controller如下:UsersCtrl=($scope,$http)->$scope.newUser={}$scope.users=[name:"aloman"email:"aloman@example.com"]编译成javascript://GeneratedbyCoffeeScript1.3.3(function(){varUsersCtrl;UsersCtrl=function($scope,$http){$scope.newUser={};return$scope.users=[{name:"alo

javascript - 如何更好地理解 Coffeescript/JavaScript 混入?

我一直在阅读有关使用Coffeescript或纯Javascript的Mixins的资料,来源如下:http://arcturo.github.com/library/coffeescript/03_classes.html(靠近底部)和http://javascriptweblog.wordpress.com/2011/05/31/a-fresh-look-at-javascript-mixins/虽然我能够编译各种示例,但我有一个主要问题似乎阻止我在理解它们方面取得进展。我不知道世界上发生了什么。首先,我将解释令我困惑的Coffeescript。moduleKeywords=['e

javascript - 使用 coffeescript 公开一个 javascript api

我最近开始使用coffeescript,并且很好奇将我使用Coffeescript创建的对象公开给其他javascript页面的“正确”方法是什么。由于coffeescripts包装功能,调用window.coffeeObject=externalObject是否可以接受。例子example.coffeeexternalObject=method1:->'Returnvalue'method2:->'Returnmethod2'window.myApi=externalObjectexample.js--从example.coffee编译(function(){varexternalO

javascript - 在 Coffeescript 中迭代 ES6 Set/Map(使用 `of` 运算符)

如何迭代ES6Map或Set在Coffeescript中?在Javascript中可以使用例如s=newSet()s.add({a:1})for(xofs){console.log(x);}但是Coffeescript有自己的of运算符,可以转换为in,即:console.log(x)forxofs变成...for(xins){...}。如何在Coffeescript中访问Javascript的of运算符?人们可以通过遍历s.values().next()来编写自己的自定义迭代器,但那是一种令人厌恶的行为。:) 最佳答案 目前无法使

javascript - 函数式javascript?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我想使用“javascript派生语言”来学习和使用当今常用的一些网络技术,如node.js、jquery等。在玩弄函数概念和语言(主要是F#)一段时间后,我正在寻找Javascript世界中是否有任何类似的东西。到目前为止,我发现和考虑的是:函数式Javascript:尽可能广泛地使用javascript的函数部分,利用Underscore或其他函数库

javascript - Coffeescript 中带有隐藏变量的模块模式

深入研究Coffeescript我正在尝试将我的Javascript文件移植到Coffeescript。关于这个,我有一个与DoulgasCrockford的模块模式相关的问题(闭包绑定(bind)以保持变量“私有(private)”)因此我的问题是:以下JS的等效Coffeescript会是什么样子:vartest=function(){varhidden='open';return{open:hidden};}();分别来说,在Coffeescript中是否有针对此模式的不同/更好的方法? 最佳答案 我认为最好的方法是借助do关

javascript - Twitter Bootstrap 选项卡显示事件未在页面加载时触发

在我有n个选项卡的页面中,以及以下脚本(coffeescript,我检查了已编译的javascript,它似乎没问题)...$->init()init=->$('a[data-toggle="tab"]').on'shown',(event)->shown=event.targetconsole.log("Showingtab:"+shown)现在,'shown'事件不会在页面加载时触发,因此对于页面上显示的第一个选项卡,无法处理此问题(即:通过xhr加载内容)我试着将它添加到上面的脚本中,看看手动触发它是否可行:$('a[data-toggle="tab"]:first').tab'