D3.js传递绑定函数似乎没有执行该函数
d3.js passing bound function does not appear to execute the function
我正在尝试重用一些使x轴滴答的代码。下面是我放入的方法:
xTicks: (scale, dayTickFormat) ->
d3.svg.axis().scale(scale).orient("bottom")
.ticks(d3.time.days, 1)
.tickSize(10)
.tickFormat(dayTickFormat)
.tickPadding(8)
请原谅咖啡留言:'
不管怎样,这里是调用它的代码:
drawTicks: (chart, chartOptions, margin, x, y, num_y_ticks) ->
xTickGroup = chart.append("g").attr("class", "day-ticks")
.call(@xTicks.bind(@, x, dayTickFormat))
.attr("transform", "translate(#{chartOptions.offset.left}, #{chartOptions.height - 10})")
当这段代码执行时,我没有得到任何标记。我难住了。任何想法吗?
好的,nvm,我知道了。
call()不是调用"d3.svg.axis()"位,它调用的是我封装在它周围的方法。因此,如果我将方法存储在一个变量中,就像这样:
xTicks = @xTicks(x, dayTickFormat)
我可以更简单地这样称呼它:
xTickGroup = chart.append("g").attr("class", "day-ticks")
.call(xTicks)
.attr("transform", "translate(#{chartOptions.offset.left}, #{chartOptions.height - 10})")
希望这对某个人有帮助:'
相关文章:
- 等待回调函数执行
- 暂停函数执行流程,直到ajax请求完成
- Bigcommerce-是否可以在函数执行后更改文本
- 如何对jquery中的未命名函数执行.call()
- 等待函数执行后再继续
- mootools类型的函数将文本作为函数执行
- 停止从另一个函数执行Javascript函数
- Jquery回调函数执行多次
- 如何使即兴 jquery 暂停当前函数执行
- JavaScript 双函数执行
- 来自函数 Javascript 的 NaN 返回值 ||函数执行顺序
- 如何在 JS 中调用 2 次或更多次时延迟函数执行
- 函数执行的次数超出预期
- JS中函数执行错误
- 为什么这个函数执行了两次
- 从子函数执行父函数;t更新父级'的属性
- 如何在jQuery函数执行's处于活动状态
- 使用javascript函数执行php文件
- jQuery函数执行顺序
- javascript中同步函数执行中的问题