多个图片数组map,需要给每个图片加上ref,这样之后好控制ref正常的写法是this.inputElement=input)/>但是我这边是动态的,之后需要获取每个图片来控制,想问下有什么好一点的办法呢?下图时我想写的,但是不行//函数imgRef(ele:HTMLElement,index:number){this['ele'+index]=ele;}//render里的渲染{srcs.map((src,i)=>{constframeStyle={zIndex:99-i};returnthis.imgRef(ele,i)}key={i}src={src}/>})}
2 回答
HUWWW
TA贡献1874条经验 获得超12个赞
单纯获取列表子节点的话,直接ref找到父元素就好了。。classAppextendsComponent{ulRef=createRef()componentDidMount(){console.log(this.ulRef.current.childNodes)}render(){return( {Array(10).fill(1).map((item,index)=>)} {index}
);}}
侃侃尔雅
TA贡献1801条经验 获得超16个赞
用数组或者对象挂载就行了this.refs=[];或者this.refs={};{srcs.map((src,i)=>{constframeStyle={zIndex:99-i};returnthis.refs[i]=img}key={i}src={src}/> })}