javascript - Typescript throw error Egenskapen 'to' finns inte på typen 'Matchers' vid kompilering av mocha/chai-testfil
Jag försöker överföra mina JavaScript-enhetstester till TypeScript, men ett enkelt test med inbyggd matchare misslyckas:
describe('test getBranches', function() {
it('returns an array of branches', function() {
branchService.getBranches(owner, name)
.then(function(res) {
expect(res).to.exist;//<-- this is where the error is from
})
})
})
Felet säger:
error TS2339: Property 'to' does not exist on type 'Matchers'.
Jag är ny på TypeScript men jag antar att jag saknar några typfiler för Mocha eller Chai? Jag har sedan installerat typings och gjorde följande:
typings install dt~mocha --save --global
typings install dt~chai --save --global
typings install dt~chai-as-promised --save --global
Men det spelar ingen roll alls.
Observera att den genererade js-filen är okej, testet gick igenom. Jag vill bara veta varför TypeScript ger detta fel och hur jag kan få det att försvinna.
Svar #1
Installera helst både mocha och chai via @types-scope som npm-paket:
npm install --save @types/mochanpm install --save @types/chainpm install --save @types/chai-as-promised
På det här sättet kan du helt överge typings-verktyget även när du inkluderar alla /// <reference path=....-direktiv.
För mer information se: https://blogs.msdn.microsoft.com/typescript/2016/06/15/the-future-of-declaration-files/