Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.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
Javascript 如何使用一个组件在另一个组件中的输入-Angular4_Javascript_Angular_Typescript_Angular Components - Fatal编程技术网

Javascript 如何使用一个组件在另一个组件中的输入-Angular4

Javascript 如何使用一个组件在另一个组件中的输入-Angular4,javascript,angular,typescript,angular-components,Javascript,Angular,Typescript,Angular Components,我是Angular方面的新手,我有一个问题:我需要在ComponentB中使用ComponentA中的一个变量,因此下面是我的代码(我需要在component“result”中使用“FavoriteSeasure”输入结果) A部分 从'@angular/core'导入{Component}; 导入{FormBuilder、FormGroup、FormArray、FormControl、ValidatorFn} 从“@angular/forms”开始; 从'@angular/material/

我是Angular方面的新手,我有一个问题:我需要在ComponentB中使用ComponentA中的一个变量,因此下面是我的代码(我需要在component“result”中使用“FavoriteSeasure”输入结果) A部分

从'@angular/core'导入{Component};
导入{FormBuilder、FormGroup、FormArray、FormControl、ValidatorFn}
从“@angular/forms”开始;
从'@angular/material/radio'导入{MatRadioModule};
从“../result/result.component”导入{ResultComponent};
从'@angular/core'导入{HostBinding};
@组成部分({
选择器:“应用程序答案三”,
templateUrl:'。/answer three.component.html',
样式URL:['./回答三个.component.css']
})
导出类应答器组件{
禁用btn:布尔值;
最喜欢的季节:弦;
季节:字符串[]=['Cheesburger','Cheesecake','Fondue','Pizza'];
提交(){
this.disableBtn=!this.disableBtn;
const result=this.favoriteSeason;
控制台日志(结果);
}
}

选择食物:
{{季节}
你最喜欢的食物是:{{favoriteSeason}
拯救
下一个

您可以使用
RxJS BehaviorSubject
来实现此目的。在本例中,我们创建了一个私有BehaviorSubject,它将保存消息的当前值,该值可以在一个组件中设置,也可以在另一个组件中获取。按照本教程的链接进行操作


您可以使用
RxJS BehaviorSubject
进行此操作。在本例中,我们创建了一个私有BehaviorSubject,它将保存消息的当前值,该值可以在一个组件中设置,也可以在另一个组件中获取。请按照本教程的链接进行操作


Sanchit Patiyal的回答是正确的,但我想详细说明一下

当在组件的字段中使用@输入()装饰器时,这意味着现在可以在父组件的模板中设置该变量。 A部分:

@组件({
选择器:“aComponent”,
templateUrl:“./a.component.html”
})
导出类组件{
inputValue:字符串;
//不管你在这里做什么
}

Sanchit Patiyal的回答是正确的,但我想详细说明一下

当在组件的字段中使用@输入()装饰器时,这意味着现在可以在父组件的模板中设置该变量。 A部分:

@组件({
选择器:“aComponent”,
templateUrl:“./a.component.html”
})
导出类组件{
inputValue:字符串;
//不管你在这里做什么
}


您可以通过服务(都可以访问同一实例)或通过其父组件(如果它们具有相同的父组件)在角度组件之间共享数据。是的,这取决于它们是否具有相同的父组件,但我在问题中看不到组件之间的任何关系,这就是为什么共享链接:)我其实不想写这篇评论,我在手机上,认为这是答案字段:D应该是答案,但我不小心发送得太早了。你可以通过服务(两者都可以访问同一实例)或通过它们的父组件(如果它们有相同的父组件)在angular组件之间共享数据.是的,这取决于它们是否有相同的父级,但我在问题中没有看到组件之间的任何关系,这就是为什么共享链接:)我实际上不想写这个评论,在手机上,认为这是答案字段:D应该是答案,但我不小心发送得太早了谢谢你的例子-现在我明白了为什么代码不起作用了!谢谢你的例子-现在我明白为什么代码不起作用了!