Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 为什么';,供应商:[旅行服务]和#x27;在组件中,是否阻止RXJS行为主体跨组件共享数据?_Angular_Rxjs_Behaviorsubject_Angular Providers_Angular2 Providers - Fatal编程技术网

Angular 为什么';,供应商:[旅行服务]和#x27;在组件中,是否阻止RXJS行为主体跨组件共享数据?

Angular 为什么';,供应商:[旅行服务]和#x27;在组件中,是否阻止RXJS行为主体跨组件共享数据?,angular,rxjs,behaviorsubject,angular-providers,angular2-providers,Angular,Rxjs,Behaviorsubject,Angular Providers,Angular2 Providers,上面的代码阻止了来自我的共享数据服务(使用RXJS中的行为主题)的数据被正确共享 @Component({ selector: 'app-overview-travel', templateUrl: './overview-travel.component.html', styleUrls: ['./overview-travel.component.scss'], providers: [TravelService] }) 但是,当我删除提供者:[TravelService]

上面的代码阻止了来自我的共享数据服务(使用RXJS中的行为主题)的数据被正确共享

@Component({
  selector: 'app-overview-travel',
  templateUrl: './overview-travel.component.html',
  styleUrls: ['./overview-travel.component.scss'],
  providers: [TravelService]
})
但是,当我删除
提供者:[TravelService]
时,数据共享服务工作正常。。我想知道为什么


提前谢谢

您的第一个版本阻止了数据共享,因为您正在为您的组件及其子组件提供一个新的
TravelService
实例。因此,每个
OverviewTravel
组件都有自己的
TravelService
实例,其他组件无法访问该实例


有关更多详细信息,请参阅。

谢谢,听起来很合乎逻辑
@Component({
  selector: 'app-overview-travel',
  templateUrl: './overview-travel.component.html',
  styleUrls: ['./overview-travel.component.scss']
})