2016-09-06 18 views
6

Obecnie próbuję użyć typów v4 drag w wersjach D3 w moim projekcie. używał Ts 1.8.10 i nie był gotowy, aby przejść do wersji beta TS2.Używanie Typypecript 2 @ Typy z maszynopisem 1.8.10

biblioteka d3-v4 typowania znajduje się tutaj: https://github.com/tomwanzek/d3-v4-definitelytyped

próbowałem zainstalować typowania przy użyciu:

typings install d3-drag=github:tomwanzek/d3-v4-definitelytyped/src/d3-drag/index.d.ts#4d09073c046b6444859c66ff441f1e7691777d0f --save 

ale dostaję następujący błąd:

typings ERR! caused by /tomwanzek/d3-v4-definitelytyped/47eae6d/src/d3-selection.d.ts responded with 404, expected it to equal 200

znalazłem kogoś zadającego to samo pytanie tutaj:

https://github.com/tomwanzek/d3-v4-definitelytyped/issues/93

ale to nie odpowiada na mój problem, ponieważ nie mogę jeszcze migrować do ts2. czy mimo to używasz @types z TS 1.8.10?

+0

Wydaje się, że jest to błąd/nieoczekiwana funkcja w analizie adresów URL "typingu". Zastanowiłbym się nad otwarciem numeru na repozytorium github. –

Odpowiedz

0

tymczasem utworzyłem plik d.ts, aby móc używać przeciągania. bez intellisense i bez sprawdzenia typu, ale przynajmniej mogę korzystać z biblioteki przeciągania.

declare var d3Drag; 
declare module 'd3-drag' 
{ 
export = d3Drag; 
} 

używam go w moim kodu tak:

import * as d3Drag from 'd3-drag'; 

... 
let dragBehaivor = d3Drag.drag().on("start", dragStartFunction); 
0

można nabyć niezbędne pliki z

npm install @types/d3-selection --save 

To będzie umieścić folder Definicja w node_modules/@ typów. Powinieneś wtedy móc skopiować folder wyboru d3 do folderu typings i dodać tam odniesienie do pliku index.d.ts. Nie próbowałem tego, ponieważ przechodzę do TS2, ale wygląda na to, że powinien działać.

0

Krótka odpowiedź brzmi, że niestety nie można używać @types dla D3 z TypeScript 1.8.x. Z dwóch powodów:

  1. Cały definicje/rozdzielczość moduł kompilator TS2 wykonuje użyć definicji zainstalowane z @types NPM nie jest dostępny w TS 1.8.x
  2. Definicje którego się odnosimy https://github.com/tomwanzek/d3-v4-definitelytyped zostały przeniesione do gałęzi DefinitelyTyped/types-2.0. To one dostarczają @types dla @types/d3 (Standard D3 v4 Bundle), @types/d3-selection, @types/d3-drag itd. Wszystkie z nich są zapisane w strukturze modułu definicji obsługiwanej tylko w TS 2. Używają również innych funkcji TS, takich jak this pisanie funkcji konteksty.

Z tych dwóch powodów nie będą one możliwe do wykonania w wersji TS 1.8.

Mamy nadzieję, że udało się uaktualnić od pierwotnie zaksięgowane, ponieważ TS 2 nie jest już beta.

Powiązane problemy