亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

react 原生實(shí)現(xiàn)頭像滾動(dòng)播放的示例

 更新時(shí)間:2020年04月21日 16:02:45   作者:eternalless  
這篇文章主要介紹了react 原生實(shí)現(xiàn)頭像滾動(dòng)播放的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

本文介紹了react 原生實(shí)現(xiàn)頭像滾動(dòng)播放的示例,分享給大家,具體如下:

之前需要的是下面這個(gè)效果

現(xiàn)在。。。

憋說(shuō)話,先看看效果。

感覺(jué)很簡(jiǎn)單呀,直接渲染,transform就可以了,嗯嗯,是的沒(méi)錯(cuò)。

渲染出來(lái),獲取元素,然后添加css,美中不足銜接不是很順暢,不過(guò)還是做出來(lái)了。

 <div className="avatar-transform" ref={this.tmall}>
          {!!personAvatar.length && personAvatar.map((item, index) => {
            return <div className="avatar-wrap" key={index}>
              <div><img src={item.avatar} alt="" /></div>
              <div className="avatar-name">{item.nickname.substring(0, 2)}***已參與活動(dòng)</div>
            </div>
          })}
        </div>
 changeCss(){
    if(this.index === 31){
      this.tmall.current.style = `transform: translateY(${this.index * 4}rem);`
      this.getAvatar()//獲取數(shù)據(jù)
      this.index = 0
      return
    }
    this.tmall.current.style = `transform: translateY(-${this.index * 4}rem);transition: all 1s ease;`
    ++this.index
    setTimeout(()=>{
      this.changeCss()
    },3000)
  }

但是問(wèn)題還是來(lái)了

一次性返回幾百條數(shù)據(jù),什么鬼,難道還直接渲染嗎,我的天,100多個(gè),渲染出來(lái),那酸爽,得了吧,全部渲染出來(lái)是不可能的了,這輩子都不可能全部渲染出來(lái)的了,看一下有沒(méi)什么方法沒(méi)有。

網(wǎng)上搜了一下,搜出來(lái)的是什么鬼,算了算了,還是得自己寫(xiě)

思路:想了一下,可不可以,在后面添加一個(gè)節(jié)點(diǎn),然后刪除最前面的節(jié)點(diǎn)

嗯?好像可以

還是原來(lái)的配方原來(lái)的味道

<div className="avatar-transform" ref={this.tmall}>
          {!!personAvatar.length && personAvatar.map((item, index) => {
            return <div className="avatar-wrap" key={index}>
              <div><img src={item.avatar} alt="" /></div>
              <div className="avatar-name">{item.nickname.substring(0, 2)}***已參與活動(dòng)</div>
            </div>
          })}
        </div>
  getAvatar(target = false) { //獲取數(shù)據(jù)
    http.get('********').json(r => {
      if (r.error) {
        return Alert(r.msg);
      }
      //判斷一下,不是第一次請(qǐng)求
      if (target) {
        this.listData = r.users
        this.changeCss()
        return
      }
      //裝起來(lái)
      this.listData = r.users
      this.setState({
        personAvatar: this.listData.splice(0, 5) //先來(lái)5個(gè)
      })
      //最開(kāi)始是在下面的transform: translateY(7rem),所以得上來(lái)
      this.tmall.current.style = `transform: translateY(0);transition: all 1s ease;`
      setTimeout(() => {
        this.changeCss()
      }, 3000)

    });
  }
.avatar-transform {

 transform: translateY(7rem);

}
  changeCss() {    
   let data = this.listData.shift()
    if (!data) {
      this.getAvatar(1)
      return
    }
    let div = document.createElement('div')
    div.className = "avatar-wrap"
    div.innerHTML = `<div><img src='${data.avatar}' alt="" /></div> 
    <div class="avatar-name">${data.nickname.substring(0, 2)}***已參與活動(dòng)</div>`
    this.tmall.current.style = `transform: translateY(-${4}rem);transition: all 1s ease;`
    this.tmall.current.appendChild(div) //添加節(jié)點(diǎn)
    setTimeout(() => {
      this.tmall.current.style = `transform: translateY(0);`
      this.tmall.current.removeChild(this.tmall.current.childNodes[0]) //刪除第一個(gè)節(jié)點(diǎn)
    }, 1000)
    setTimeout(() => {
      this.changeCss()
    }, 3000)

  }

到此這篇關(guān)于react 原生實(shí)現(xiàn)頭像滾動(dòng)播放的示例的文章就介紹到這了,更多相關(guān)react 頭像滾動(dòng)播放內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • React實(shí)現(xiàn)阿里云OSS上傳文件的示例

    React實(shí)現(xiàn)阿里云OSS上傳文件的示例

    這篇文章主要介紹了React實(shí)現(xiàn)阿里云OSS上傳文件的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 使用Node搭建reactSSR服務(wù)端渲染架構(gòu)

    使用Node搭建reactSSR服務(wù)端渲染架構(gòu)

    這篇文章主要介紹了使用Node搭建reactSSR服務(wù)端渲染架構(gòu),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • React實(shí)現(xiàn)控制減少useContext導(dǎo)致非必要的渲染詳解

    React實(shí)現(xiàn)控制減少useContext導(dǎo)致非必要的渲染詳解

    這篇文章主要介紹了React如何有效減少使用useContext導(dǎo)致的不必要渲染,使用useContext在改變一個(gè)數(shù)據(jù)時(shí),是通過(guò)自己逐級(jí)查找對(duì)比改變的數(shù)據(jù)然后渲染,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-11-11
  • 詳解開(kāi)發(fā)react應(yīng)用最好用的腳手架 create-react-app

    詳解開(kāi)發(fā)react應(yīng)用最好用的腳手架 create-react-app

    本篇文章主要介紹了詳解開(kāi)發(fā)react應(yīng)用最好用的腳手架 create-react-app,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • react中路由和按需加載的問(wèn)題

    react中路由和按需加載的問(wèn)題

    這篇文章主要介紹了react中路由和按需加載的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 使用 React hooks 實(shí)現(xiàn)類所有生命周期

    使用 React hooks 實(shí)現(xiàn)類所有生命周期

    react 自 16.8 開(kāi)始,引入了 Hooks 概念,使得函數(shù)組件中也可以擁有自己的狀態(tài),并且可以模擬對(duì)應(yīng)的生命周期,這篇文章主要介紹了使用 React hooks 怎么實(shí)現(xiàn)類里面的所有生命周期,需要的朋友可以參考下
    2023-02-02
  • 說(shuō)說(shuō)react中引入css的方式有哪些并區(qū)別在哪

    說(shuō)說(shuō)react中引入css的方式有哪些并區(qū)別在哪

    本文主要介紹了說(shuō)說(shuō)react中引入css的方式有哪些并區(qū)別在哪,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • 原生實(shí)現(xiàn)一個(gè)react-redux的代碼示例

    原生實(shí)現(xiàn)一個(gè)react-redux的代碼示例

    這篇文章主要介紹了原生實(shí)現(xiàn)一個(gè)react-redux的代碼示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • react native 獲取地理位置的方法示例

    react native 獲取地理位置的方法示例

    這篇文章主要介紹了react native 獲取地理位置的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • React?TypeScript?應(yīng)用中便捷使用Redux?Toolkit方法詳解

    React?TypeScript?應(yīng)用中便捷使用Redux?Toolkit方法詳解

    這篇文章主要為大家介紹了React?TypeScript?應(yīng)用中便捷使用Redux?Toolkit方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11

最新評(píng)論