2016-08-30 33 views
5

Po zainstalowaniu modułu socket.iokątowa 2: błąd TS2307: Nie można odnaleźć modułu 'socket.io-client'

npm install socket.io --save 

mam następujący błąd:

błąd TS2307: Nie można odnaleźć modułu " socket.io-client”

import

import * as io from 'socket.io-client'; 

systemjs.config.js

var map = { 
    'socket.io-client': 'node_modules/socket.io-client/socket.io.js' 
} 

var packages = { 
    'socket.io-client': { main: 'socket.io', format: 'cjs', defaultExtension: 'js' } 
} 

package.json

"dependencies": { 
    "socket.io": "^1.4.8" 
} 

typings.d.ts

/// <reference path="../socket.io-client/socket.io.js" /> 

declare module 'socket.io-client' { 
    var e: any; 
    export = e; 
} 

socket.io-client (Katalog)
- socket.io.js
- typings.d.ts


kątowe 2 RC5

Odpowiedz

10

brakuje typowania. Otwarte typings.d.ts i dodać

declare module 'socket.io-client' { 
    var e: any; 
    export = e; 
} 

Można również spróbować zainstalować typowania dla socket.io poprzez npm i @types/socket.io-client. Nie wiem jednak, czy są dostępne typowania.

+0

Nie mam pliku 'typings.dtsts' nawet jeśli używam' npm i @ types/socket.io-client' – Jils

+0

Po prostu utwórz i wstaw '' /// <ścieżka referencyjna = "... "/>" do pliku ts, który importuje plik socket.io. Umieść tam względną ścieżkę do pliku d.ts. – j2L4e

+0

Źle mnie zrozumiałeś. Musisz wstawić '/// ' do pliku .ts powyżej 'import * as io z 'socket.io-client '; ' – j2L4e

0

ja rozwiązałem dodając ten na szczycie moich app.components.ts

/// <reference path="../../typings/globals/socket.io-client/index.d.ts" /> 
13

Upewnij się, aby zainstalować odpowiedni pakiet z definicji typu dla socket.io:

npm install @types/socket.io-client --save 

ten będzie zawierał typy we właściwym folderze i oznacza, że ​​nie będziesz potrzebował żadnych działań w żadnym innym pliku, ponieważ kątowy to wybierze.

Powiązane problemy