Heim Web-Frontend View.js In einem Artikel wird ausführlich erläutert, wie vue2 die Pull-Down-Ladefunktion mit Dämpfung implementiert

In einem Artikel wird ausführlich erläutert, wie vue2 die Pull-Down-Ladefunktion mit Dämpfung implementiert

Feb 20, 2023 pm 12:07 PM
vue2

Dieser Artikel vermittelt Ihnen relevantes Wissen über die Funktion des gedämpften Pulldowns in vue2. Ich hoffe, dass es für Sie hilfreich ist ist hilfreich.

In einem Artikel wird ausführlich erläutert, wie vue2 die Pull-Down-Ladefunktion mit Dämpfung implementiert

In Vue müssen die ausgelösten Ereignisse gebunden werden.

<div
  id="testchatBox"
  class="chatWrap"
  :style="{paddingTop: chatScroollTop + &#39;px&#39;}"
  @touchstart="touchStart" 
  @touchmove="touchMove"
  @touchend="touchEnd">
</div>
Nach dem Login kopieren
Bewegen auf dem Bildschirm

  • Touchend: Wenn der Finger den Bildschirm verlässt

  • Wie aus paddingTop hervorgeht, erreichen wir den Drop-Down-Effekt, indem wir die Polsterung am oberen Rand des Containerabstands steuern. Unsere Neuanpassung besteht also darin, den Wert von chatScrollTop über die drei oben genannten Rückruffunktionen zu bestimmen.

    Sie können am Namen chatScoollTop erkennen, dass unsere Pulldown-Aktualisierung im Chatbox-Container verwendet wird.
  • Wir müssen diese Variablen verwenden:

    data() {
      return {
        chatScroollTop: 0, // 容器距离顶部的距离 
        isMove: false, // 是否处于touchmove状态
        startY: 0, // 当前手指在屏幕中的y轴值
        pageScrollTop: 0, // 滚动条当前的纵坐标
        
      }
    }
    Nach dem Login kopieren

    Die drei Rückruffunktionen entsprechen drei Stufen, und unser Kerncode ist es auch In drei Teile unterteilt:
Teil 1: Initialisieren Sie den Abstand zum oberen Rand des aktuellen Containers, initialisieren Sie, ob er sich derzeit in einem gleitenden Zustand befindet, und ermitteln Sie die Ordinate der aktuellen Bildlaufleiste.

touchStart(e) {
  // e代表该事件对象,e.targetTouches[0].pageY可以拿到手指按下的 y轴点
  this.startY = e.targetTouches[0].pageY
  // 开启下拉刷新状态
  this.isMove = false
  this.pageScrollTop = document.documentElement && document.documentElement.scrollTop
}
Nach dem Login kopieren

Teil 2: Bestimmen Sie den Abstand zwischen dem Behälter und der Oberseite anhand der Ordinatendifferenz zwischen dem aktuellen Abstand des aktuellen Fingers und dem Moment, in dem er den Bildschirm berührt. Da es aber nicht ständig gleiten kann, entsteht eine Atmosphäre von 0 -> 80. Um das Gleiten interessanter zu machen, wird ein Schrittwert hinzugefügt, um das Gleitdistanzverhältnis anzupassen. Das sogenannte Distanzverhältnis bedeutet, dass die Distanz, die die Fähigkeit zum Gleiten zurücklegt, umso kürzer ist, je weiter der Finger vom Anfang entfernt ist. Erzielen Sie einen dämpfungsähnlichen Effekt.

touchMove(e) {
  // 这个 touchMove,只要页面在动都会发生的,所以 touching就起作用了
  // 获取移动的距离
  let diff = e.targetTouches[0].pageY - this.startY
  let step = 60
  if (diff > 0 && diff < 80 && this.pageScrollTop === 0) {
     step++ // 越来越大
     this.chatScroollTop += (diff / (step * 0.1)) // 越向下给人的阻力感越大
     this.isMove = true
  }
}
Nach dem Login kopieren

Teil 3: Nachdem Sie Ihren Finger losgelassen haben, geben Sie einen Abstand von oben ein, um eine Lade-Bildlaufleiste hinzuzufügen.

  touchEnd() {
    if(this.isMove) {
      this.chatScroollTop = 40
      this.downCallback() // api拉取数据
    }
  }
  async downCallback() {
    try {
       // 拿数据 
    } catch() {} 
    finall{
      this.chatScrollTop = 0
    }
  }
Nach dem Login kopieren
Empfohlenes Lernen: „

vue.js Video-Tutorial

Das obige ist der detaillierte Inhalt vonIn einem Artikel wird ausführlich erläutert, wie vue2 die Pull-Down-Ladefunktion mit Dämpfung implementiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1664
14
PHP-Tutorial
1268
29
C#-Tutorial
1248
24
Die Wahl der Frameworks: Was treibt die Entscheidungen von Netflix vor? Die Wahl der Frameworks: Was treibt die Entscheidungen von Netflix vor? Apr 13, 2025 am 12:05 AM

Netflix berücksichtigt hauptsächlich Leistung, Skalierbarkeit, Entwicklungseffizienz, Ökosystem, technische Schulden und Wartungskosten bei der Rahmenauswahl. 1. Leistung und Skalierbarkeit: Java und Springboot werden ausgewählt, um massive Daten und hohe gleichzeitige Anforderungen effizient zu verarbeiten. 2. Entwicklungseffizienz und Ökosystem: Verwenden Sie React, um die Effizienz der Front-End-Entwicklung zu verbessern und sein reiches Ökosystem zu nutzen. 3. Technische Schulden- und Wartungskosten: Wählen Sie Node.js, um Microservices zu erstellen, um Wartungskosten und technische Schulden zu senken.

React vs. Vue: Welches Framework verwendet Netflix? React vs. Vue: Welches Framework verwendet Netflix? Apr 14, 2025 am 12:19 AM

NetflixuSesacustomframeworkcalted "Gibbon" Builtonreact, NotreactorVuedirect.1) TeamExperience: Wählen Sie beobädtes Vertrauen

Reagieren, Vue und die Zukunft von Netflix 'Frontend Reagieren, Vue und die Zukunft von Netflix 'Frontend Apr 12, 2025 am 12:12 AM

Netflix verwendet React hauptsächlich als Front-End-Framework, das durch VUE für bestimmte Funktionen ergänzt wird. 1) Die Komponentierung von React und das virtuelle DOM verbessern die Leistung und Entwicklungseffizienz von Netflix -Anwendungen. 2) VUE wird in den internen Tools und kleinen Projekten von Netflix verwendet, und seine Flexibilität und Benutzerfreundlichkeit sind entscheidend.

Netflix -Frontend: Beispiele und Anwendungen von React (oder Vue) Netflix -Frontend: Beispiele und Anwendungen von React (oder Vue) Apr 16, 2025 am 12:08 AM

Netflix verwendet React als Front-End-Framework. 1) Reacts komponentiertes Entwicklungsmodell und ein starkes Ökosystem sind die Hauptgründe, warum Netflix es ausgewählt hat. 2) Durch die Komponentierung spaltet Netflix komplexe Schnittstellen in überschaubare Teile wie Videotiere, Empfehlungslisten und Benutzerkommentare auf. 3) Die virtuelle DOM- und Komponentenlebenszyklus von React optimiert die Rendering -Effizienz und die Verwaltung des Benutzerinteraktion.

Vue.js verstehen: vor allem ein Frontend -Framework Vue.js verstehen: vor allem ein Frontend -Framework Apr 17, 2025 am 12:20 AM

Vue.js ist ein progressives JavaScript -Framework, das von Ihnen Yuxi im Jahr 2014 veröffentlicht wurde, um eine Benutzeroberfläche zu erstellen. Zu den Kernvorteilen gehören: 1. Responsive Datenbindung, automatische Aktualisierungsansicht von Datenänderungen; 2. Komponentenentwicklung kann die Benutzeroberfläche in unabhängige und wiederverwendbare Komponenten aufgeteilt werden.

Die Frontend -Landschaft: Wie Netflix ihre Auswahl annähte Die Frontend -Landschaft: Wie Netflix ihre Auswahl annähte Apr 15, 2025 am 12:13 AM

Die Auswahl von Netflix in der Front-End-Technologie konzentriert sich hauptsächlich auf drei Aspekte: Leistungsoptimierung, Skalierbarkeit und Benutzererfahrung. 1. Leistungsoptimierung: Netflix wählte React als Hauptgerüst und entwickelte Tools wie SpeedCurve und Boomerang, um die Benutzererfahrung zu überwachen und zu optimieren. 2. Skalierbarkeit: Sie übernehmen eine Mikro-Front-End-Architektur, die Anwendungen in unabhängige Module aufteilt und die Entwicklungseffizienz und die Systemskalierbarkeit verbessern. 3. Benutzererfahrung: Netflix verwendet die Material-UI-Komponentenbibliothek, um die Schnittstelle kontinuierlich durch A/B-Tests und Benutzer-Feedback zu optimieren, um Konsistenz und Ästhetik sicherzustellen.

VUE.JS: Definieren seiner Rolle in der Webentwicklung VUE.JS: Definieren seiner Rolle in der Webentwicklung Apr 18, 2025 am 12:07 AM

Vue.js 'Rolle in der Webentwicklung besteht darin, als progressives JavaScript -Framework zu fungieren, das den Entwicklungsprozess vereinfacht und die Effizienz verbessert. 1) Es ermöglicht Entwicklern, sich auf Geschäftslogik durch reaktionsschnelle Datenbindung und Komponentenentwicklung zu konzentrieren. 2) Das Arbeitsprinzip von Vue.js beruht auf reaktionsschnellen Systemen und virtuellem DOM, um die Leistung zu optimieren. 3) In den tatsächlichen Projekten ist es üblich, Vuex zu verwenden, um den globalen Zustand zu verwalten und die Datenreaktionsfähigkeit zu optimieren.

VUE.JS -Funktion: Verbesserung der Benutzererfahrung am Frontend VUE.JS -Funktion: Verbesserung der Benutzererfahrung am Frontend Apr 19, 2025 am 12:13 AM

Vue.js verbessert die Benutzererfahrung durch mehrere Funktionen: 1. Responsives System realisiert Echtzeitdaten-Feedback; 2. Die Komponentenentwicklung verbessert die Wiederverwendbarkeit des Codes; 3.. Vuerouter bietet eine reibungslose Navigation; 4. Dynamische Datenbindung und Übergangsanimation verbessern den Interaktionseffekt; 5. Fehlerverarbeitungsmechanismus sorgt für das Feedback der Benutzer. 6. Leistungsoptimierung und Best Practices verbessern die Anwendungsleistung.

See all articles