que instalar example comandos cli node.js typescript typescript1.8

node.js - instalar - typescript example



TypeScript: ¿cómo definir tipings personalizados para el paquete npm instalado? (2)

Cree un nuevo archivo, lo llamó rx-node.d.ts y asegúrese de que esté referenciado en su tsconfig.json directamente o desde otro archivo, por ejemplo typings/index.d.ts . Entonces puedes comenzar con algo como esto:

///<reference path="rx.d.ts" /> declare namespace RxNode { export interface Emitter<T>{ } export function toEventEmitter<T>(observable: Rx.Observable<T>, eventName: string): Emitter<T>; }

Esta pregunta / respuesta podría ser útil: ¿Cómo escribir el archivo d.ts desde el archivo .js existente?

Si crea un archivo de definición de typings agradable y de alta calidad, contribuya con https://github.com/DefinitelyTyped/DefinitelyTyped

Me gusta usar rx-node dentro de TypeScript

import RxNode from ''rx-node'';

Instalé rx-node usando npm

$ npm install rx-node --save

Busqué definiciones de tipo, pero sin ningún resultado

$ typings search rx-node No results found for search

¿Cómo puedo definir definiciones de tipos personalizados para el módulo npm rx-node instalado? ¿Dónde debería almacenar el archivo de definición de tipo? Cómo configurar TypeScript ( tsconfig.json y typings.json )?

Editar: Gracias a Aleksey L. y David Bohunek logré definir un rx-node.d.ts que se parece a esto

declare module "rx-node" { import {Observable} from ''@reactivex/rxjs''; import {ReadLine} from "readline"; function fromReadLineStream(stream: ReadLine): Observable<string> }

Instalé @reactivex/rxjs

npm install --save @reactivex/rxjs

Como recibí un error

node_modules/@reactivex/rxjs/dist/cjs/Observable.d.ts (10,66): Cannot find name ''Promise''. (2304)

Cambié el objetivo en tsconfig.json a es6 .


Puede agregar definiciones personalizadas a typings.json . Por ejemplo, tiene la siguiente estructura de carpetas:

/typings /custom rx-node.d.ts /global ...

donde rx-node.d.ts es tu archivo de typings personalizado. Por ejemplo:

declare module RxNode { export interface ... }

Luego instálelo con un comando

typings install file:typings/custom/rx-node.d.ts --save --global

O manualmente: en typings.json agrega referencia a este archivo de typings:

{ "name": "TestName", "version": false, "globalDependencies": { "rx-node": "file:typings/custom/rx-node.d.ts" } }

Y ejecutar typings install