d3の部分のTypescriptバインディングを把握できません。私が今しようとしているもの:d3 typescriptバインディング:未定義のプロパティ 'ticks'を読み取ることができません
private xScale: ScaleTime<number, number>;
private xAxis: Axis<Date | number | { valueOf(): number }>;
...
this.xScale = scaleTime()
.domain([new Date('2017-01-01'), new Date('2017-12-31')])
.range([0, 100]);
this.xAxis = axisBottom(this.xScale);
svg.append("g")
.attr("transform", "translate(50,50)")
.call(this.xAxis);
これは私にERROR: TypeError: Cannot read property 'ticks' of undefined
を与えます。
デフォルト設定では動作することを証明するのに十分ですが、(ticks()
またはtickArguments()
を使用して)そのように設定すると問題ありません。
機能axisBottom()
は次のように入力される。
function axisBottom<Domain>(scale: AxisScale<Domain>): Axis<Domain>;
が、私はそれをScaleTime
を渡しています。私はそれが私が何をしなければならないのかと思う。なぜならそれは何であるのか。scaleTime()
が戻るからだ。 ScaleTime
オブジェクトにはticks()
メソッドがあります(少なくとも1つはインターフェイスで指定されています)。
これらのオブジェクトをすべて接続する方法がわかりません。 「^ 4.11:タイプ/ D3 @
- :d3が使用するのが難しいことができ、型の安全性を維持することが、物事がはるかに容易になります。..すべての
バージョンを - 私はそれは価値があると思うので、私は持続しています。 1" 、タイプ/ D3選択マルチ@
- : "^ 1.0.6"
- D3: "^ 4.11.0"
- D3選択マルチ: "^ 1.0.1"、