2015-12-03 21 views
10

Ho ottenuto il file di definizione del dattiloscritto "Definitely Typed" per JQuery e utilizza bool anziché "Boolean".Definizioni di JQuery Typescript usando "bool" invece di "Boolean"

Questo mi sta dando errori nel mio progetto dattiloscritto: Cannot find name 'bool'

ho cambiato la mia versione di usare booleano e funziona, ma mi ha confuso.

Definitely Typed è ancora il posto per ottenere le definizioni di dattiloscritto? Se è così, perché non si sta rompendo per tutti gli altri?

C'è un posto migliore per ottenere le definizioni di dattiloscritto?

+2

È probabilmente un * davvero * vecchio file per un * veramente vecchio versione del compilatore * – basarat

risposta

14

Il nome corretto da utilizzare è boolean, non Boolean.

Definitely Typed è ancora il posto corretto in cui ottenere le definizioni.

Dove hai trovato questo file? La versione corrente (https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/jquery/jquery.d.ts) non utilizza bool ovunque.

+3

Hmmm. Sono andato su nuget e ho installato 'jquery.TypeScript.DefinitelyTyped'. Ho appena trovato 'npm install tsd -g' .... Cerchiamo di passare a ottenere tutti da quello. – Vaccano

+5

Strano. Appena controllato, e in qualche modo ho avuto la versione 0.0.1. (prima versione di anni fa ...) aggiornerò. Grazie! – Vaccano

+2

Sembra che l'installazione del pacchetto angular.TypeScript.DefinitelyType abbia un riferimento al pacchetto di definizione del dattiloscritto jQuery della versione 0.0.1. –

9

Questo è successo anche a me quando ho impostato per la prima volta Typescript per un progetto AngularJS.

  1. Go per gestire i pacchetti Nuget per soluzione
  2. View sezione Aggiornamenti, si dovrebbe vedere jquery.TypeScript.DefinitelyTyped nella lista.
  3. Aggiorna il pacchetto e gli errori di compilazione scompaiono.

Spero che questo aiuti.

0

Ho avuto lo stesso problema - un file jquery.d.ts con bool ovunque anziché boolean.

Nel mio caso, il file jquery.d.ts proviene da un corso di Pluralsight.

La soluzione per me era smettere di usare quella versione, e invece installare il pacchetto nuget. Dalla console VS Package Manager:

install-package jquery.TypeScript.DefinitelyTyped 

Al momento della scrittura, che è la versione 3.1.2 che utilizza correttamente boolean, non bool.

(Inoltre, per quanto riguarda il corso Pluralsight, non ho utilizzare i propri file ad eliminazione diretta in dotazione, ma, invece, installato knockout.TypeScript.DefinitelyTyped.)