javascript - kan inte hitta modulen chai även om den finns i node_modules-mappen


Jag försökte installera chai med följande kommando.

 npm install --save-dev chai

Sedan körde jag min enhetstestklass med följande importer.

import {assert} from 'chai';
import {expect} from 'chai';

Det kastar följande fel.

test\main\MessageBroker.spec.ts(3,22): error TS2307: Cannot find module 'chai'.
[05:38:45] [Typescript] TypeScript error: test\main\MessageBroker.spec.ts(3,22): error TS2307: Cannot find module 'chai'.
test\main\MessageBroker.spec.ts(4,22): error TS2307: Cannot find module 'chai'.
[05:38:45] [Typescript] TypeScript error: test\main\MessageBroker.spec.ts(4,22): error TS2307: Cannot find module 'chai'

Vad gör jag för fel här? Jag kan också se chai-mappen inne i node_modules-mappen.

När jag skriver var chai=require('chai'); fungerar det! Varför fungerar inte import?

Svar #1

Jag har inte installerat en typning för chai, det vill säga jag har inte refererat chai från DefinitelyTyped men har installerat det som en nodmodul. Därför var jag tvungen att anropa det med en require-sats i min TypeScript-kod.

 var chai = require('chai');

Svar #2

Nåväl, detta fel kan faktiskt lösas genom att installera typerna. Det är konstigt, men det fungerade för mig. Testa det:

npm i --save-dev @types/chai

Relaterade artiklar