Typescript'te Typeings'ten ithal ederken bir Javascript modülünü nasıl kullanırım
Mgechev'in angular2-seed'ini kullanarak, yeni bir proje için Angular2 ve Typescript'i öğrenmeye çalışıyorum, ancak bu sorunla karşılaştım.
Bir bileşende Numeral kullanmak istiyorum, bu yüzden:
- Numeral,
npm install numeralkullanılarak yüklendi typings install dt~numeraljs --global --savekullanarak Numeral için yazım kurulumunu yaptım- Bileşenime
import { numeral } from '/typings/globals/numeraljs';ekledim - Aşağıdaki kod satırı eklendi:
let num:Number=new Number(numeral().unformat(text));
Şimdiye kadar her şey yolunda. Her şey düzgün bir şekilde transpile oluyor gibi görünüyor. Tarayıcıya gelene kadar, konsolda şunu alıyorum:
Error: XHR error (404 Not Found) loading http://localhost:5555/typings/globals/numeraljs.js(…)
Burada neyi yanlış yapıyorum? Typescript'e gerçek kodun nerede olduğunu söylemek için bir adımı mı kaçırdım?
Cevap #1
Genellikle yapmak istediğiniz şey, paket yerel bir Typescript modülü değilse:
import * as numeral from 'numeral';
Typings klasörü sadece Typescript'e tür tanımlarının ne olduğunu söylemek için vardır, böylece kod vurgulaması ve linting için kullanılabilir. İçe aktarmak istediğiniz gerçek modül node_modules klasöründe bulunur ve adıyla içe aktarılabilir.
Eğer hala numeral modülünü bulamadığı için hata veriyorsa, ekleyebilirsiniz
/// <reference path="typings/globals/numeraljs/numeraljs.d.ts"/>
veya Typescript tanım dosyasının saklandığı her yerde.
