TS2307 - Как использовать мою собственную библиотеку в Angular 9? - PullRequest
0 голосов
/ 20 апреля 2020

Я пытаюсь сделать первый Angular 9 проект. Цель: создать собственную библиотеку foo и попытаться использовать ее в тестовом проекте my-libraries, поэтому я сделал следующие шаги:

  1. В моей среде IDE (PHPStorm) я сделал * Проект 1054 * 9:

    ng new my-libraries

  2. Я создал новую библиотеку:

    ng generate library foo --prefix=foo

    Это работает и генерирует библиотечную базу с компонентом, службой и модулем.

  3. Я создаю библиотеку непосредственно foo

    ng build foo

    Это работает и встроить dist/foo

и добавить ts.config.json

"paths": {
    "foo": [
            "dist/foo/foo",
            "dist/foo"
          ]
}

PHPStorm в app.module.ts делает автозаполнение, и я могу сделать это:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

import {FooModule} from 'foo';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    FooModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

Но есть ошибка при наборе текста на from 'foo'; TS2307: Cannot find module 'foo'.

Чего следует избегать эта ошибка?

1 Ответ

0 голосов
/ 20 апреля 2020

Я не знаю, правильный ли это путь, но он работает, когда я изменяю путь в app.module.ts следующим образом:

import {FooModule} from '../../projects/foo/src/lib/foo.module';
...