"Включение" socket.io-client в ванильный машинописный текст - PullRequest
0 голосов
/ 10 июля 2020

Я решил использовать Typescript для создания класса, который будет предоставлять некоторые методы, использующие socket.io-client.

У меня есть два исходных файла Typescript и файл socket.io. js (клиент) :

  • file1.ts
  • file2.ts
  • socket.io. js (клиент)

file2.ts зависит от file1.ts и file1.ts зависит от socket.io. js.

I хотел бы иметь один файл. js в конце, который я могу отправить клиенту, чтобы он мог вставить его в свой HTML и использовать предоставленные методы объекта. Он будет служить своего рода SDK, который позволит клиенту получать некоторые данные из моего серверного приложения, на котором запущен и прослушивает сокет-сервер.

Мой tsconfig. json выглядит так:

{
    "compilerOptions": {
        "allowJs": true,
        "disableSizeLimit": true,
        "esModuleInterop": true,
        "locale": "en",
        "module": "amd",
        "noImplicitAny": true,
        "outFile": "./dist/outputFile.js",
        "preserveConstEnums": true,
        "removeComments": true,
        "rootDir": "src",
        "moduleResolution": "node",
        "sourceMap": true,
        "traceResolution": true
    },
    "include": [
        "./src/socket.io.js",
        "./src/file1.ts",
        "./src/file2.ts",
    ],
}

Идея состоит в том, чтобы иметь возможность использовать socket.io. js в file1.ts следующим образом:

this.socket = io.connect(MY_NAMESPACE, {
    query: parameters,
});

Есть ли способ заставить этот сценарий работать?

...