Как я могу поделиться многими интерфейсами Typescript между проектами - PullRequest
0 голосов
/ 04 мая 2018

Я создал проект, который содержит только интерфейсы машинописи. Поэтому у меня могут быть такие файлы, как account.ts и item.ts, которые содержат только интерфейсы

export interface Account
{
    name: string;
}

Как мне упаковать все эти файлы локально, чтобы я мог установить npm (из локального) и использовать эти интерфейсы в других проектах с чем-то вроде ...

import { Account, Item } from 'all-my-interfaces';

1 Ответ

0 голосов
/ 15 мая 2018

Я написал статью на носителе, в которой говорится об этом.


Быстрое прохождение только с предметами первой необходимости:

> mkdir my-lib
> cd my-lib
> npm init -y
> npm i -D typescript
> touch tsconfig.json
> mkdir src
> touch src/index.ts
> touch .npmignore

tsconfig.json:

{
    "compilerOptions": {
      "target": "es6",
      "module": "commonjs",
      "declaration": true,
      "outDir": "./dist",
      "strict": true
    }
}

Src / index.ts:

export interface Check {
    isValid(): bool;
}

.npmignore:

dist/

Добавьте сценарии npm в package.json :

"prepublishOnly": "tsc"

Публикация:

npm publish

Теперь используйте в другом проекте:

npm i my-lib
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...