Vue Uniapp realisiert den Segmentierungseffekt

Vue Uniapp realisiert den Segmentierungseffekt

In diesem Artikel wird der spezifische Code von Vue Uniapp zur Erzielung des Segmentierungseffekts zu Ihrer Information geteilt. Der spezifische Inhalt ist wie folgt

Dies dient lediglich dazu, den Effekt der dynamischen Stiländerung mit vue aufzuzeichnen

Zeigen Sie zuerst den Effekt

Vorlage

<Ansichtsklasse="AnzahlZeit">
 <text class="title">Rabatte und Essenszeiten</text>
 <Klasse anzeigen="wrap">
  <view class="box" v-for="(item,index) in discountList" :Schlüssel="index" @click="toggleItem(index)">
   <Ansichtsklasse="selBox" :style="[itemStyle(index)]">
    <Klasse anzeigen="AnzahlBox">
     <text class="Anzahl">{{item.count}}</text>
     <text>Falten</text>
       </Ansicht>
    <text class="Zeit">{{item.time}}</text>
   </Ansicht> 
   <text class="countPrice" :style="[priceStyle(index)]">Nach Abzug des Rabatts beträgt der Durchschnittspreis pro Person ¥100</text>
  </Ansicht>
 </Ansicht>
</Ansicht>

Skriptteil

Der Schlüssel zu diesem Teil ist der Code unter berechnet

Standard exportieren {
  Daten() {
   zurückkehren {
    sieFarbe:diese.Enum.Them.base,
    Rabattliste:[{
     "Anzahl": 6,9,
     "Zeit": "12:00–13:00"
    },{
     "Anzahl": 6,7,
     "Zeit": "14:00–16:00"
    },{
     "Anzahl": 6,5,
     "Zeit": "20:00–22:00"
    }],
    aktuellerIndex:0
   }
  },
  berechnet:{
   Artikelstil () {
    Rückgabeindex => {
     lass Stil = {}
     wenn(index === dieser.aktuellerIndex){
      Stil.Hintergrundfarbe = diese.SieFarbe;
      Stil.border = `1px durchgezogen ${this.themColor}`;
      Stil.Farbe = "#fff";
     }
     //Wenn der zweite ausgewählt ist, werden der erste rechte Rand und der dritte linke Rand auf „keine“ gesetzt.
     wenn(dieser.aktuellerIndex === 1){
      wenn(index === dieser.aktuellerIndex - 1){
       style.borderRight = "keine !wichtig"
      }
      wenn(index === dieser.aktuellerIndex + 1){
       style.borderLeft = "keine !wichtig"
      }
     }
     Rückgabestil
    }
   },
   Preisstil(){
    Rückgabeindex => {
     lass Stil = {}
     wenn(index === dieser.aktuellerIndex){
      Stil.Farbe = diese.SieFarbe
     }
     Rückgabestil
    }
   }
  },
  Methoden: {
   Umschalten des Elements (idx) {
    dieser.aktuellerIndex = idx
   }
  }
 }

CSS-Stile

Auf die hier verwendeten SCSS wird hier nicht näher eingegangen.

.Zeitangabe{
  Anzeige: Flex;
  Flex-Richtung: Spalte;
  .Titel{
   Schriftgröße: $uni-font-size-bl;
   Rand: 20 Rpx 0;
  }
  .wickeln{
   Anzeige: Flex;
   .Kasten{
    @include flex(Spalte,Mitte,Mitte);
    Breite: 33%;
    &:n-tes-Kind(2){
     & > .selBox{
      Rand links: keiner;
      Rand rechts: keiner;
     }
    }
    .selBox{
     @include flex(Spalte,Mitte,Mitte);
     Breite: 100 %;
     Höhe: 150rpx;
     Rand: 1px durchgezogen $uni-border-color;
     .countBox{
      Schriftgröße: $uni-font-size-lg;
      Schriftstärke: fett;
      Rand unten: 10rpx;
      .zählen{
       Schriftgröße: $uni-font-size-bl;
      }
     }
     .Zeit{
      Schriftgröße: $uni-font-size-l;
     }
    }
    .AnzahlPreis{
     Rand oben: 10rpx;
     Schriftgröße: $uni-font-size-l;
    }
   }
  }
 }

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Analyse des Uniapp-Einsteiger-NVUE-Klettergrubenrekords
  • Basierend auf dem Live-Broadcast-Projekt vue+uniapp imitiert uni-app die Live-Broadcast-Raumfunktion von Douyin/Momo
  • Detaillierte Erklärung des Unterschieds zwischen Uniapp und Vue

<<:  MySql8 WITH RECURSIVE rekursive Abfrage Eltern-Kind-Sammlungsmethode

>>:  So ändern Sie den Inhalt eines vorhandenen Docker-Containers

Artikel empfehlen

Umfassende Zusammenfassung zu MySQL GTID

Inhaltsverzeichnis 01 Einführung in GTID 02 Wie G...

Besprechen Sie den Entwicklungstrend der Baidu Encyclopedia UI

<br />Die offizielle Version der Baidu-Enzyk...

Analyse der MySQL-Absturzwiederherstellung basierend auf Redo Log und Undo Log

Inhaltsverzeichnis MySQL-Absturzwiederherstellung...

Vue implementiert den Schnittstellen-Gleiteffekt

In diesem Artikelbeispiel wird der spezifische Co...

MySQL Serie 4 SQL-Syntax

Inhaltsverzeichnis Tutorial-Reihe 1. Einführung u...

Detaillierte Erklärung des Hash-Jump-Prinzips von Vue

Inhaltsverzeichnis Der Unterschied zwischen Hash ...

Der grundlegendste Code für Webseiten

◆Zu Favoriten hinzufügen veranschaulichen Klicken...

Von Vue berechnete Eigenschaften

Inhaltsverzeichnis 1. Grundlegende Beispiele 2. B...

Docker nginx implementiert einen Host zum Bereitstellen mehrerer Sites

Die virtuelle Maschine, die ich von einer bestimm...

Reflexion und Proxy in Front-End-JavaScript

Inhaltsverzeichnis 1. Was ist Reflexion? 2. Refle...