自己写了一个轮播图的组件,在传值时却一直拿不到正确的值,
一共有四张图,img元素已经渲染出来了,但是imgNum=0,imgWidth=NAN,
图片数据是通过ajax向服务器获取的
代码如下:
<Banner imgNum={this.state.imgs.length} imgWidth={this.state.imgWidth}>
{this.state.imgs.map((val,index) => (
<img
key={index}
src={`${Tool.IP}/ydcsPhone/goodsInfo/downloadGoodsPicture?goodsInfoId=${this.gID}&goodsPictureName=${val}&session=${Tool.SESSION}`}
alt="商品图片"
style={{ float:"left",width:this.state.imgWidth,height:this.state.imgHeight}}
/>
))}
</Banner>
应该是this 的指向不对。 在render 中定义 const self = this;
然后在 img 中 使用 style ={{width: self.state.imgWidht}}