Das WeChat-Applet realisiert die Chatroom-Funktion

Das WeChat-Applet realisiert die Chatroom-Funktion

In diesem Artikel wird der spezifische Code des WeChat-Applets zur Implementierung des Chatrooms anhand von Beispielen zu Ihrer Information vorgestellt. Der spezifische Inhalt ist wie folgt

1. Effektanzeige erzielen

2.Raum.wxml

<Ansichtsklasse="Container" Stil="{{ContainerStyle}}">
  <Chatraum
    Stil="Breite: 100%; Höhe: 100%"
    envId="{{chatRoomEnvId}}"
    Sammlung="{{chatRoomCollection}}"
    Gruppen-ID = "{{Chatroom-Gruppen-ID}}"
    Gruppenname = "{{Chatroom-Gruppenname}}"
    BenutzerInfo="{{BenutzerInfo}}"
    onGetUserInfo="{{onGetUserInfo}}"
    getOpenID="{{getOpenID}}"
  ></Chatraum>
</Ansicht>

3.Raum.js

const app = getApp()

Seite({
  Daten: {
    Avatar-URL: './user-unlogin.png',
    Benutzerinfo: null,
    protokolliert: falsch,
    takeSession: falsch,
    Anfrageergebnis: '',
    // chatRoomEnvId: 'release-f8415a',
    chatRoomCollection: 'Chatraum',
    chatRoomGroupId: "Demo",
    chatRoomGroupName: 'Chatraum',

    // Funktionen zur Verwendung in Chatroom-Komponenten
    onGetUserInfo: null,
    getOpenID: null,
  },

  beim Laden: Funktion() {
    // Benutzerinformationen abrufen wx.getSetting({
      Erfolg: res => {
        wenn (res.authSetting['scope.userInfo']) {
          // Bereits autorisiert, können Sie getUserInfo direkt aufrufen, um den Avatar-Spitznamen ohne Popup-Fenster abzurufen wx.getUserInfo({
            Erfolg: res => {
              dies.setData({
                avatarUrl: res.userInfo.avatarUrl,
                Benutzerinfo: res.userInfo
              })
            }
          })
        }
      }
    })

    dies.setData({
      onGetUserInfo: dies.onGetUserInfo,
      getOpenID: this.getOpenID,
    })

    wx.getSystemInfo({
      Erfolg: res => {
        console.log('Systeminfo', res)
        wenn (res.safeArea) {
          const { oben, unten } = res.safeArea
          dies.setData({
            Containerstil: `padding-top: ${(/ios/i.test(res.system) ? 10 : 20) + top}px; padding-bottom: ${20 + res.windowHeight - bottom}px`,
          })
        }
      },
    })
  },

  getOpenID: asynchrone Funktion() {
    wenn (diese.openid) {
      gib dies zurück.openid
    }

    const { Ergebnis } = warte auf wx.cloud.callFunction({
      Name: 'Anmelden',
    })

    Ergebnis zurückgeben.openid
  },

  onGetUserInfo: Funktion(e) {
    wenn (!this.logged && e.detail.userInfo) {
      dies.setData({
        protokolliert: wahr,
        avatarUrl: e.detail.userInfo.avatarUrl,
        Benutzerinfo: e.detail.userInfo
      })
    }
  },

  beiShareAppMessage() {
    zurückkehren {
      Titel: 'Instant Messaging Demo',
      Pfad: '/pages/im/room/room',
    }
  },
})

4.zimmer.json

{
  "Komponenten verwenden": {
    "Chatroom": "/Komponenten/Chatroom/Chatroom"
  }
}

5.Zimmer.wxss

.container {
  Höhe: 100%;
  Position: absolut;
  oben: 0;
  unten: 0;
  links: 0;
  rechts: 0;
  Polsterung oben: 80rpx;
  Polsterung unten: 30rpx;
}

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:
  • 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
  • Das WeChat-Applet implementiert einen einfachen Chatroom

<<:  Tutorial zur Installation von Docker im Windows 10-Subsystem Ubuntu (WSL) (mit Bildern und Text)

>>:  Zusammenfassung der allgemeinen MySQL-SQL-Anweisungen einschließlich komplexer SQL-Abfragen

Artikel empfehlen

Automatischer Commit-Vorgang für MySQL-Transaktionen

Der Standardbetriebsmodus von MySQL ist der Autoc...

Linux-Grundlagen-Tutorial: Sonderberechtigungen SUID, SGID und SBIT

Vorwort Für Datei- oder Verzeichnisberechtigungen...

Lösen Sie das Problem des Startfehlers von PHPStudy MySQL unter Windows

Einen Fehler melden Der Apache\Nginx-Dienst wurde...

JavaScript zum Implementieren der Auswahl oder Stornierung von Kontrollkästchen

In diesem Artikel wird der spezifische JavaScript...

Beispielanweisungen für Indizes und Einschränkungen in MySQL

Fremdschlüssel Abfrage, bei welchen Tabellen der ...

Detaillierte Erklärung zum Einfügen gängiger Nginx-Befehle in Shell-Skripte

1. Erstellen Sie einen Ordner zum Speichern von N...

So installieren Sie eine MySQL-Datenbank im Deepin 2014-System

Deepin 2014 herunterladen und installieren Zum He...

Der Unterschied zwischen JS-Pre-Parsing und Variablen-Promotion im Web-Interview

Inhaltsverzeichnis Was ist eine Voranalyse? Der U...