d3 ticks函数在js中而不在ts中工作

时间:2018-12-03 10:27:15

标签: javascript typescript d3.js

我想将JavaScript代码转换为打字稿,但遇到一些困难。这是 JS 中的阻止代码。

this.yScale.ticks(this.yAxis.ticks()[0])
    .map((function(d) { return Math.floor(this.yScale(d))+0.5; }).bind(this))
        .forEach((function(d) {
            this.canvas.moveTo(0, d);
            this.canvas.lineTo(this.width, d);
        }).bind(this));

对于翻译,我有以下几种类型:

canvas: CanvasRenderingContext2D;
xScale: d3Axis.AxisScale<number>;
yScale: d3Axis.AxisScale<number>;
xAxis: d3Axis.Axis<number>;
yAxis: d3Axis.Axis<number>;

但是现在我出现了错误

Property 'ticks' does not exist on type 'AxisScale<number>'

,也未提供this.yAxis.ticks()[0]中的滴答声的自变量计数。

有人可以解释一下为什么这不是TS中的有效代码吗?函数滴答的行为是什么?

0 个答案:

没有答案