在本地消费时找不到 Angular 库模块

问题描述 投票:0回答:0

我试图在我的 Jhipster 应用程序中制作可重用的登录组件,所以我创建了 Angular 库来实现这一点。这样,我们也可以在其他应用程序中使用此登录组件。

我还包含了组件依赖的必要服务。

1- 我用

ng generate library login-lib

创建了图书馆

2- 创建库时,我也放置了服务。 所以文件结构看起来像这样;

3-我导出了

public-api.ts

中的所有文件
export { LoginLibService } from './lib/login-lib.service';
export { LoginLibComponent } from './lib/login-lib.component';
export { LoginLibModule } from './lib/login-lib.module';
export { Login } from './lib/login-lib.model';
export { Account } from './lib/auth/account-lib.model';
export { AccountService } from './lib/auth/account-lib.service';
export { AuthServerProvider } from './lib/auth/auth-jwt-lib.service';
export { StateStorageService } from './lib/auth/state-storage-lib.service';
export { UserRouteAccessLibService } from './lib/auth/user-route-access-lib.service';
export { ApplicationConfigService } from './lib/config/application-config-lib.service';

4- 当我使用

ng build login-lib
构建库时,编译后的文件位于名为
dist\login-lib

的根目录下

5- 现在我想使用

login-lib.component.ts
以便在主应用程序中呈现模板。因为我有登录表格。

6- 我在应用程序的

LoginLibModule
中导入了
login.module

import { LoginLibModule } from '../../../../../dist/login-lib/public-api';

@NgModule({
  imports: [SharedModule, RouterModule.forChild([LOGIN_ROUTE]), LoginLibModule],
  declarations: [LoginWrapperComponent],
})
export class LoginModule {}

7-稍后在

LoginWrapperComponent
模板中,我用
login-lib.component.ts
渲染
jhi-login-lib


现在的问题;

./src/main/webapp/app/login/login.module.ts:3:0-84 - Error: Module not found: Error: Can't resolve '../../../../../dist/login-lib/lib/login-lib.module' in 'C:\daten\dev\...\...\src\main\webapp\app\login'

我有同样的错误,每当我试图从

dist
而不是
projects\login-lib
访问图书馆时。如果我使用库源代码中的文件,即
projects\login-lib
,我没有任何问题。然而,这是我的错,我使用
projects\login-lib
.

将库集成到应用程序中

1- 不管导入什么路径,都不识别模块。 我试过使用,

import { LoginLibModule } from 'login-lib';,

import { LoginLibModule } from '../../../../../dist/login-lib/login-lib';,

import { LoginLibModule } from '../../../../../dist/login-lib/lib/login-lib.module';

import { LoginLibModule } from '../../../../../dist/login-lib/public-api';

2- 我已经尝试在库和应用程序中的

angular.json
文件中导入脚本文件;

"scripts": ["./dist/login-lib/fesm2015/login-lib.js"]

我们正在使用另一个库,我们也像这样导入到脚本中。

3- 我也尝试将

dist
构建到
node_modules
的路径。还是一样。

4-我已经尝试发布到

npm
,还是一样的错误

angular jhipster angular-library
© www.soinside.com 2019 - 2024. All rights reserved.