在Angular 7中,可以使用多库依赖来解决项目中的代码共享问题。以下是一个示例解决方法:
ng generate library shared-lib
该命令将在项目的根目录下创建一个名为shared-lib的文件夹,其中包含一个示例的共享库。
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class SharedService {
constructor() { }
public sharedMethod(): void {
console.log('This is a shared method');
}
}
ng build shared-lib
该命令将在共享库的dist文件夹中生成一个构建包。
ng add shared-lib
import { NgModule } from '@angular/core';
import { SharedService } from 'shared-lib';
@NgModule({
...
providers: [SharedService],
...
})
export class AppModule { }
import { Component } from '@angular/core';
import { SharedService } from 'shared-lib';
@Component({
...
})
export class AppComponent {
constructor(private sharedService: SharedService) {
sharedService.sharedMethod();
}
}
通过这种方式,可以将共享库中的代码轻松地引入到Angular 7项目中的多个库和应用中。