我正在开发 Rails 3.1 应用程序,并且很高兴使用 SASS 和 CoffeeScript。我特别喜欢变量和导入的 SASS 扩展。我构建了一个 _global-settings.css.scss 文件,其中包含我在所有样式表中使用的所有十六进制常量值。这为我提供了一个管理颜色、字体和布局尺寸的地方。非常干燥。
但是,如果我希望使用 JQuery 动态调整我的 css,我将无法再访问我的 css 编译时变量,并且必须在 .js.coffee 文件中重现与 JSON 哈希相同的数据。一点也不干。
这是我的问题:在我开始构建一个 rake 任务以将我的 css 设置文件合并到等效的 CoffeeScript 哈希中之前,有人有更聪明的想法吗?就像隐藏 html 文件中隐藏 div 中的所有值一样?
我正在尝试创建一个消息小部件,当用户单击其 div 时打开一条消息,并且每 30 秒刷新一次。
问题是小部件刷新后,单击功能停止工作。我猜这与设置点击时添加的新元素不存在的事实有关。我用萤火虫测试了它,如果我在重新加载后运行脚本,它会一直工作到下一次刷新。
有谁知道在 ajax 调用后重置类似内容的正确方法是什么?
我在下面包含我的咖啡脚本代码:
refreshPartial = ->
$.ajax url: "refresh-messages-feed"
$(document).ready ->
myElem = document.getElementById("messagesFeed")
setInterval refreshPartial, 30000 if myElem?
$(".conversation").click ->
url = "/conversations/small/" + $(this).attr("id")
console.log url
$.ajax
url: url
cache: false
success: (html) ->
$("#conversation").html html
Run Code Online (Sandbox Code Playgroud) 我在CoffeeScript中编写了一个简单的模块,但我想将已编译的JavaScript发布到NPM.我不想coffee每次都手动运行命令,这太多的打字,我可能会偶尔忘记并发布陈旧的js.
我知道有一些npm package.json脚本钩子和CoffeeScript cli参数的组合可以解决这个问题,但我忘记了细节.怎么回事?
我有一个用coffeescript编写的NodeJS应用程序,它要求我设置stack_size参数以使其正确运行.该命令看起来像是为了让它运行.
coffee --nodejs --stack_size=65000 app.coffee
Run Code Online (Sandbox Code Playgroud)
现在我想将它集成到PM2中,但无法弄清楚如何添加像stack_size这样的参数.我该怎么办呢?
我是AngularJS的新手,我正在尝试学习更多关于ng-repeat的可能性.我已经整理了一些代码来尝试学习更多但是我遇到了一些我不理解的问题.
这是代码:
HTML:
<ul class="list-unstyled">
<li ng-repeat="worker in workers">
<section class="well col-md-6 col-md-offset-3">
<h1 class="h3 col-md-6 text-right" style="margin-top: 0"><a>{{worker.worker_name}} {{ getTipCount(worker.id) }}</a></h1>
</section>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
在我的控制器中:
$scope.getTipCount = (workerId) ->
WorkerTips = $resource("/workers/#{workerId}", { workerId: "@id", format: 'json' })
json = WorkerTips .get ((res) ->
$scope.workertipscount = res.worker.tips.lengh
)
Run Code Online (Sandbox Code Playgroud)
在JSON中,每个工作者对象都有一系列提示,我想要做的是获得每个工作者有多少提示的计数.要做到这一点,我需要通过ng-repeat从worker获取id,然后将其传递给一个函数,然后从JSON中获取提示计数并将其显示在页面上.
但是,当我尝试这样做时,看起来页面进入无限循环,我得到以下错误:
错误:[$ rootScope:infdig] 10 $ digest()迭代达成.中止!
所以我猜测我的方法是从ng-repeat中的元素中提取信息,然后将它发送到也被发送到ng-repeats视图的函数是不正确的?如果是这样,AngularJS的正确方法是什么?
我有两个选择,第二个根据第一个的值而改变.我使用CoffeScript.
<%= f.collection_select :type, RequestType.order(:typeName), :id, :typeName,
{include_blank:true }, {:class => "types"} %>
<%= f.grouped_collection_select :subtype, RequestType.order(:typeName),
:RequestSubTypes, :typeName, :request_type_id, :subTypeName,
{include_blank:true},
{:class => "subTypes" } %>Run Code Online (Sandbox Code Playgroud)
jQuery ->
subTypes = $(".subTypes").html()
$(".subTypes").parent().hide()
$(".types").change ->
type = $(".types :selected").text()
options = $(subTypes).filter("optgroup[label='#{type}']").html()
if options
$(".subTypes").html(options)
$(".subTypes").parent().show()
else
$(".subTypes").empty()
$(".subTypes").parent().hide()Run Code Online (Sandbox Code Playgroud)
<%= link_to "link", new_request_path %>Run Code Online (Sandbox Code Playgroud)
如何在没有parens的情况下调用CoffeeScript中没有参数的函数?
fun = -> alert "Boo!"
Run Code Online (Sandbox Code Playgroud)
我曾尝试fun.和(fun)
我有一个字符串如下:
str = "abcdefg123"
Run Code Online (Sandbox Code Playgroud)
我想得到最后一个字符(3),如何通过coffeescript制作它?
我是coffeescript的新手,希望有人能帮助我,提前谢谢!
有没有办法翻译类似下面的逻辑操作(由于用户输入使用字符串)?或者我是否必须检查每种可能性?(> <=> == = <等)
var x = 5;
var y = 3;
var operator = '>'
if (x operator y)
doSomething();
|
|
v
if (x > y)
doSomething();
Run Code Online (Sandbox Code Playgroud) 是否有一个键或什么东西可以用来设置视频即时转码中缩略图的高度和宽度?
transcodeVideo = (fileName, cb) ->
elastictranscoder = new (AWS.ElasticTranscoder)(apiVersion: '2012-09-25')
elastictranscoder.createJob {
PipelineId: process.env.PIPELINE_ID
OutputKeyPrefix: fileName + '/'
Input:
Key: fileName
FrameRate: 'auto'
Resolution: 'auto'
AspectRatio: 'auto'
Interlaced: 'auto'
Container: 'auto'
Output:
Key: 'video.mp4'
Resolution: 'auto'
ThumbnailPattern: 'thumbs-{count}'
PresetId: process.env.PRESET_ID
Rotate: 'auto'
}, cb
Run Code Online (Sandbox Code Playgroud)