在Angular 6中,可以使用共享模块和共享服务来共享代码和功能。下面是一个包含代码示例的解决方法:
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { HttpClientModule } from '@angular/common/http';
@NgModule({
imports: [
CommonModule,
FormsModule,
HttpClientModule
],
exports: [
CommonModule,
FormsModule,
HttpClientModule
]
})
export class SharedModule { }
import { NgModule } from '@angular/core';
import { SharedModule } from './shared/shared.module';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
SharedModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class SharedService {
sharedData: string;
constructor() { }
setData(data: string) {
this.sharedData = data;
}
getData() {
return this.sharedData;
}
}
import { Component } from '@angular/core';
import { SharedService } from '../shared/shared.service';
@Component({
selector: 'app-my-component',
template: `
{{ sharedService.getData() }}
`
})
export class MyComponent {
constructor(private sharedService: SharedService) { }
setData() {
this.sharedService.setData('Shared Data');
}
}
通过以上步骤,你可以在Angular 6中使用共享模块和共享服务来共享代码和功能。在需要共享的模块中导入和导出共享模块,然后在需要共享的组件中依赖注入共享服务,并使用其功能和方法。