Angular 7 импортирует примитивные расширения из угловой библиотеки - PullRequest
0 голосов
/ 28 мая 2019

Итак, я написал свои собственные примитивные расширения, и они хорошо работают. Я использую их в нескольких проектах, и теперь пришло время централизовать мою работу в библиотеке.

Первая попытка угловой библиотеки

Пока все хорошо, службы и компоненты работают хорошо. Теперь я импортирую свои расширения, как в других приложениях:

extensions.ts

interface String {
    someFunction(this: string): boolean;
}

String.prototype.someFunction= function (this: string): boolean {
    return !this;
};

и в моем my-lib.module.ts

import './path/to/my/extensions';

общественностью api.ts

export * from './lib/core/extensions';

Затем я создаю пакет моей библиотеки с npm pack и устанавливаю его в моем приложении с помощью npm install / absolute / path / to / my-lib . Как только моя библиотека установлена, я проверяю, все ли в порядке.

Все в порядке, кроме расширений. Как я могу использовать my-lib / extensions в проектах, которые импортируют мою библиотеку?

Если я попытаюсь в моем app.module.ts

import 'my-lib/extensions';

У меня ошибка:

Failed to compile.

./src/app/app.module.ts
Module not found: Error: Can't resolve 'my-lib/extensions' in 'C:\Angular\MyApp\src\app'

Есть идеи? Я немного потерян (мы предполагаем, что все пути верны)

1 Ответ

0 голосов
/ 28 мая 2019

Если my-lib отсутствует в папке вашего приложения, вам необходимо включить его в файл tsconfig.json ...

"include": [
    "path/to/my-lib"
]
...