Das WeChat-Applet implementiert einen einfachen Chatroom

Das WeChat-Applet implementiert einen einfachen Chatroom

In diesem Artikel wird der spezifische Code des WeChat-Applets zur Implementierung eines einfachen Chatrooms zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt

cha.js

// Seiten/Chat/chat.js
// Holen Sie sich die Mini-Programminstanz let app = getApp();
Seite({

  /**
   * Ausgangsdaten der Seite */
  Daten: {
    Spitzname:'',
    Avatar:'',
    Chatlisten:[
      {
        Spitzname: „小林“,
        Avatar: „https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1591617971938&di=30d9f3b49a0d1b27fb4b61ea424f82c9&imgtype=0&src=http%3A%2F%2Fa-ssl.duitang.com%2Fuploads%2Fitem%2F201610%2F07%2F20161007135058_nUxji.jpeg“,
        Inhalt: „Hallo! `
      }
    ],
    imWert:''
  },
  sendMsg:Funktion(){
    lass _this = dies;
    lass obj = {
      Spitzname:_dieser.Daten.Spitzname,
      avatar:_diese.Daten.avatar,
      Inhalt:_diese.Daten.inWert
    };
    lass arr = _this.data.chatlists;
    arr.push(Objekt)
    _this.setData({
      Chatlisten:arr,
      imWert:''
    });

    // Sende den Chat-Inhalt an den Server, kehre nach der Verarbeitung zurück und füge die zurückgegebenen Daten dann in die Chatliste ein},
  getInput:Funktion(e){
    Konsole.log(e.detail.Wert);
    dies.setData({invalue:e.detail.value});
  },

  /**
   * Lebenszyklusfunktion - auf Seitenladen warten*/
  onLoad: Funktion (Optionen) {
    console.log(app.globalData.userInfo.nickName);
    dies.setData({
      Spitzname:app.globalData.userInfo.nickName,
      avatar:app.globalData.userInfo.avatarUrl
    });
  },

  /**
   * Lebenszyklusfunktion - wartet auf den Abschluss der ersten Darstellung der Seite*/
  onReady: Funktion () {

  },

  /**
   * Lebenszyklusfunktion - Seitenanzeige überwachen*/
  onShow: Funktion () {

  },

  /**
   * Lebenszyklusfunktion - Achten Sie auf das Ausblenden von Seiten */
  onHide: Funktion () {

  },

  /**
   * Lebenszyklusfunktion - Deinstallation der Seite überwachen*/
  beimEntladen: Funktion () {

  },

  /**
   * Seitenbezogene Ereignisverarbeitungsfunktion - Achten Sie auf die Pulldown-Aktion des Benutzers */
  onPullDownRefresh: Funktion () {

  },

  /**
   * Die Funktion, die das Bottoming-Ereignis auf der Seite behandelt*/
  onReachBottom: Funktion () {

  },

  /**
   * Der Benutzer klickt auf die obere rechte Ecke, um zu teilen*/
  beiShareAppMessage: Funktion () {

  }
})

chat.wxml

<block wx:for="{{chatlists}}" wx:for-index="ind" wx:for-item="chat" wx:key="ind">

<view class="chat self" wx:if="{{nickname == chat.nickname}}">
 <Ansichtsklasse="rechts">
  <Klasse anzeigen="Inhalt">
   {{chat.inhalt}}
  </Ansicht>
 </Ansicht>
 <Ansichtsklasse="links">
  <Bild Klasse="Avatar" src="{{chat.avatar}}"></Bild>
 </Ansicht>
</Ansicht>

<Ansichtsklasse="Chat" wx:else>
 <Ansichtsklasse="links">
  <Bild Klasse="Avatar" src="{{chat.avatar}}"></Bild>
 </Ansicht>
 <Ansichtsklasse="rechts">
  <view class="nickname">{{chat.nickname}}</view>
  <Klasse anzeigen="Inhalt">
      {{chat.inhalt}}
  </Ansicht>
 </Ansicht>
</Ansicht>

</block>


<view class="form">
 <Ansichtsklasse="weui-cell weui-cell_input">
  <input class="weui-input" value="{{invalue}}" bindinput="getInput" placeholder="Bitte geben Sie den Chat-Inhalt ein" />
 </Ansicht>
 <button type="primary" bindtap="sendMsg">Senden</button>
</Ansicht>

chat.css

/* Seiten/Chat/chat.wxss */
.avatar{
  Breite: 130rpx;
  Höhe: 130rpx;
  Randradius: 50 %;
}


.chat{
  Anzeige: Flex;
  Elemente ausrichten: zentrieren;
  Rand oben: 15px;
}
.selbst{
  Inhalt ausrichten: Flex-Ende;
  Rand oben: 15px;
}

.links{
  Polsterung: 20rpx;
  selbst ausrichten: Flex-Start;
}
.selbst .links{
  Polsterung oben: 0;
}

.Rechts{
  Rand links: 10px;
}
.richtig .Inhalt{
  Hintergrundfarbe: #eee;
  Farbe: #123;
  Schriftgröße: 16px;
  /* Rahmen: 1px durchgezogen #ddd; */
  Polsterung: 10px;
  Zeilenhöhe: 26px;
  Rand rechts: 10px;
  Rahmenradius: 3px;
  Position: relativ;
  Mindesthöhe: 20px;
}
.rechts .content::before{
  Inhalt: ' ';
  Anzeige: Block;
  Breite: 0;
  Höhe: 0;
  Rand: 12px durchgehend transparent;
  Rahmenfarbe rechts: #eee;
  Position: absolut;
  oben: 10px;
  links: -23px;
}
.self .right .content::vor{
  Rand: 0;
}
.selbst .rechts .inhalt::nach{
  Inhalt: ' ';
  Anzeige: Block;
  Breite: 0;
  Höhe: 0;
  Rand: 12px durchgehend transparent;
  Rahmenfarbe links: #1ad409;
  Position: absolut;
  oben: 10px;
  rechts: -23px;

}
.selbst .rechts .inhalt{
  Hintergrundfarbe: #1ad409;
}

.bilden{
  Position: fest;
  unten: 0;
  Hintergrundfarbe: #eee;
  Breite: 750rpx;
  Anzeige: Flex;
  Höhe: 39px;
  Elemente ausrichten: zentrieren;
}
.form input{
  Breite: 600rpx;
  Hintergrundfarbe: #fff;
  Höhe: 36px;
  Zeilenhöhe: 36px;
  Polsterung: 0,5px;
}
Taste{
  Breite: 65rpx;
  Höhe: 36px;
}

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:
  • Das WeChat-Applet realisiert die Chatroom-Funktion
  • WeChat-Applet implementiert Chatroom
  • Detaillierte Erläuterung des Chatrooms für die WeChat-Applet-Entwicklung - Echtzeit-Chat, Unterstützung für Bildvorschau
  • Beispielcode zur Implementierung des WeChat-Applets WebSocket-Chatroom
  • Einfache Implementierung des WeChat-Applet-Chatrooms

<<:  Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7.17

>>:  Probleme beim Ändern des Passworts und beim Herstellen einer Verbindung zu Navicat bei der Installation und Verwendung von MySQL 8.0.16 unter Windows 7

Artikel empfehlen

Detaillierte Einführung in den MySQL-Datenbankindex

Inhaltsverzeichnis Mindmap Einfaches Verständnis ...

So implementieren Sie das Builder-Muster in Javascript

Überblick Das Builder-Muster ist ein relativ einf...

Praktisches Tutorial zum Ändern des MySQL-Zeichensatzes

Vorwort: In MySQL unterstützt das System viele Ze...

MySql-Wissenspunkte: Transaktion, Index, Sperrprinzip und Nutzungsanalyse

Dieser Artikel erläutert anhand von Beispielen di...

MySQL Series 6-Benutzer und Autorisierung

Inhaltsverzeichnis Tutorial-Reihe 1. Benutzerverw...

Tutorial zum Erstellen eines Zookeeper-Servers unter Windows

Installation und Konfiguration Die offizielle Web...

Verwendung von relativen und absoluten Pfaden unter Linux

01. Übersicht Absolute und relative Pfade kommen ...

Wie verstecke ich einen bestimmten Text in HTML?

Code zum Ausblenden von Text, Ausblenden eines bes...

Tutorial zur Installation von htop unter CentOS 8

Wenn Sie Ihr System interaktiv überwachen möchten...

MySQL-Hochverfügbarkeitslösung MMM (MySQL Multi-Master-Replikationsmanager)

1. Einführung in MMM: MMM steht für Multi-Master ...

So konfigurieren Sie die MySQL Master-Slave-Replikation unter Windows

Die MySQL Master-Slave-Replikation ermöglicht die...

Schritte zum Reparieren einer Beschädigung der Datei grub.cfg im Linux-System

Inhaltsverzeichnis 1. Einführung in die grub.cfg-...

Was sind die Unterschiede zwischen SQL und MySQL

Was ist SQL? SQL ist eine Sprache zum Betrieb von...

Lösung für den Fehler beim Aufruf von Yum im Docker-Container

Beim Ausführen von yum im Dockerfile oder im Cont...