Html 如何使用@input将数组数据传递给子组件
我想使用@Input和selector将数据传递给子组件 HomeComponent.htmlHtml 如何使用@input将数组数据传递给子组件,html,angular,typescript,Html,Angular,Typescript,我想使用@Input和selector将数据传递给子组件 HomeComponent.html <c:homeHeader [dataSample]="[homeDataSample]"></c:homeHeader> <c:homeMedia></c:homeMedia> <c:ourPartner></c:ourPartner> <c:ourFriends></c:ourFrie
<c:homeHeader [dataSample]="[homeDataSample]"></c:homeHeader>
<c:homeMedia></c:homeMedia>
<c:ourPartner></c:ourPartner>
<c:ourFriends></c:ourFriends>
子组件
HomeHeader.html
<h5 class="text-uppercase font-weight-bold">
{{dataSample['title']}}
</h5>
我的JSON文件仅复制haft
{
"data": [
{
"id": "sitePagesec015394",
"created_by_id": "usr01539232275296",
"updated_by_id": "usr01539232275296",
"name": "home",
"langs": {
"en_US": {
"id": "sitePage0tsec015394",
"created_by_id": "usr01539232275296",
"created_date": null,
"updated_by_id": "usr01539232275296",
"updated_date": null,
"is_backup": 0,
"lang_code": "en_US",
"title": "Home",
"short_desc": "Lorem ipsum dolor sit amet, consitePagetetur
adipisicing elit. Accusantium repellat nostrum dignissimos laborum,
deleniti non quae tenetur natus dolorem voluptas ratione unde
numquam, recusandae quos",
"site_pages_id": "sitePagesec015394"
}
},
"all_sections": [
{
"id": "sec01539602403701",
"name": "home-header",
"type": null,
"bg_img": "assets/img/vipay1.jpg",
"bg_color": null,
"created_date": null,
"updated_date": null,
"bg_video": null,
"created_by_id": "usr01539232275296",
"updated_by_id": "usr01539232275296",
"is_backup": 0,
"parent_id": null,
"ordering": 0,
"edit_bg_image": 0,
"site_pages_id": "sitePagesec015394",
"record_type": "asset",
"bg_img_preview": "gallery\/bg\/header.png",
"langs": [],
"sub_sections": [],
"assets": [
{
"id": "ast01539857954921",
"created_date": null,
"updated_date": null,
"created_by_id": "usr01539232275296",
"updated_by_id": "usr01539232275296",
"icon": null,
"image": null,
"ordering": 0,
"type": null,
"edit_icon": 0,
"edit_title": 0,
"edit_subtitle": 0,
"edit_short_desc": 0,
"edit_image": 0,
"progress_value": null,
"is_progress": 0,
"sections_id": "sec01539602403701",
"is_backup": 0,
"parent_id": null,
"record_type": "info-exlink",
"internal_link": null,
"external_link": null,
"image_preview": "",
"langs": {
"en_US": {
"id": "ast0t01539857954921",
"created_date": null,
"created_by_id": "usr01539232275296",
"updated_date": null,
"updated_by_id": "usr01539232275296",
"is_backup": null,
"lang_code": "en_US",
"assets_id": "ast01539857954921",
"title": "PERSONAL",
"subtitle": null,
"short_desc": "Enjoy shopping and transfering money easily
with ViPay, You can download the ViPay APP from the
AppStore or GooglePlay.",
"description": null,
"exlink_title": "Download",
"inlink_title": null
}
}
},
如果我想为我的孩子html HomeHeaderComponent获取title=PERSONAL,我应该怎么做
我已经试了几个小时了,没什么好看的。试着这样:
<c:homeHeader [dataSample]="homeDataSample"></c:homeHeader>
试着这样做:
<c:homeHeader [dataSample]="homeDataSample"></c:homeHeader>
试一试:
<c:homeHeader [dataSample]="homeDataSample"></c:homeHeader>
将dataSample类型更改为HomeHeader.ts中的任意类型,因为您正在将对象传递给子组件。如果您有任何特定类型,请使用该类型
@输入数据示例:任意;//
尝试访问html中的title属性,如下所示:
{{dataSample.assets[0].langs.en_US.title}
试一试:
<c:homeHeader [dataSample]="homeDataSample"></c:homeHeader>
将dataSample类型更改为HomeHeader.ts中的任意类型,因为您正在将对象传递给子组件。如果您有任何特定类型,请使用该类型
@输入数据示例:任意;//
尝试访问html中的title属性,如下所示:
{{dataSample.assets[0].langs.en_US.title}
看起来你基本上明白了。不过,您可以删除输入周围的[]。假设您所做的console.log正在返回您期望的值。如果没有,请链接它的输出,这样我们可以进一步帮助。看起来你基本上已经得到了它。不过,您可以删除输入周围的[]。假设您所做的console.log正在返回您期望的值。如果没有,请链接它的输出,这样我们可以进一步帮助。