TS2307 - 如何在 Angular 9 中使用我自己的库?

TS2307 - How to use my own library in Angular 9?

我正在尝试做第一个 Angular 9 项目。 目标:创建我自己的库 foo 并尝试在测试项目中使用它 my-libraries 所以我执行了以下步骤:

  1. 在我的 IDE (PHPStorm) 中,我创建了 angular 9 项目:

    ng new my-libraries

  2. 我新建了一个库:

    ng generate library foo --prefix=foo

    有效并生成包含组件、服务和模块的库库。

  3. 我直接建库foo

    ng build foo

    dist/foo

  4. 中有效并构建

并加入ts.config.json

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

app.module.ts 中的 PHPStorm 进行了自动补全,我可以这样做:

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' 上存在打字错误。

避免此错误的步骤是什么?

我不知道这是否正确,但当我像这样更改 app.module.ts 中的路径时它会起作用:

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