在Angular中保持一个恒定的作用域可以通过以下方式实现:
<!-- 父组件 -->
<app-child [data]="parentData"></app-child>
<!-- 子组件 -->
<p>{{ data }}</p>
// 服务
@Injectable()
export class DataService {
private data: any;
setData(data: any) {
this.data = data;
}
getData() {
return this.data;
}
}
// 组件
@Component({
selector: 'app-child',
template: '<p>{{ data }}</p>'
})
export class ChildComponent {
data: any;
constructor(private dataService: DataService) {}
ngOnInit() {
this.data = this.dataService.getData();
}
}
// 路由配置
const routes: Routes = [
{ path: 'child/:data', component: ChildComponent }
];
// 组件
@Component({
selector: 'app-child',
template: '<p>{{ data }}</p>'
})
export class ChildComponent {
data: any;
constructor(private route: ActivatedRoute) {}
ngOnInit() {
this.data = this.route.snapshot.paramMap.get('data');
}
}
这些方法可以帮助在Angular中保持一个恒定的作用域,确保组件始终使用相同的数据。对于更复杂的应用程序,可能需要结合使用这些方法来实现所需的作用域。
领取专属 10元无门槛券
手把手带您无忧上云