【发布时间】:2020-03-07 04:43:29
【问题描述】:
即使数组 subBanner1 包含数据,也永远不会进入以下 ngFor 循环:
<div class="col-6 d-flex d-lg-flex flex-column justify-content-lg-center shop-all"
*ngFor="let image of images.subBanner1">
<img class="img-fluid d-lg-flex" src="assets/img/{{image}}" alt="image">
</div>
这是 subBanner1 数组:
subBanner1: ['05-0320-w1-Women-Main2.jpg', '05-0320-w1-Men-Main2.jpg']
另一方面,当我如下所示直接定位数组的特定元素时,它会显示图像。
<div class="col-6 d-flex d-lg-flex flex-column justify-content-lg-center shop-all">
<img class="img-fluid d-lg-flex" src="assets/img/{{images.subBanner1[0]}}">
</div>
获取subBanner1数组的代码:
private getHomeStaticData = () => {
const homeSelector = (state) => {return (state.home)};
let home$ = this.store.select(homeSelector);
home$.subscribe(homeStaticData => {
this.images = homeStaticData.images
console.log('images', this.images)
console.log('images.subBanner1', this.images.subBanner1)
})
}
subBanner1 初始化:
const initialState = {
images: {
mainBanner: '05-0320-w1-HeroClearout2.jpg',
subBanner1: ['05-0320-w1-Women-Main2.jpg', '05-0320-w1-Men-Main2.jpg']
}
}
【问题讨论】:
-
你在使用
OnPush策略吗? -
我不知道 OnPush 策略是什么。它是一个新的 Angular 构造吗?
-
代替
<img>,你能尝试打印所有元素吗? -
不,它是组件装饰器中的一个属性。您能否在填充数组的位置添加代码?
-
@JacopoSciampi 我已经添加了获取数组的代码。
标签: angular