t×tecexpressby TeKOcloud
ENv0.7.1
Daten & Ansichten / VUE

TxChat.

Interaktive Vorschau

Lokaler Nachrichtenverlauf mit Autoren, Schreibanzeige und Sendeereignissen. sent bestätigt die lokale Aufnahme, keine Serverzustellung.

PropTypStandardBedeutung
dataSourceTxSource<ChatMessage> | undefinedundefinedListe, Konfiguration oder DataSource-Instanz; hat Vorrang vor items.
userChatUsererforderlichAktueller Chatautor.
itemsChatMessage[] | undefinedundefinedEinträge; bei Datenbindung durch dataSource ersetzt.
inputFieldTextstring | undefinedundefinedKontrollierter Nachrichtenentwurf.
titlestring | undefinedChatTitel der Ansicht.
subtitlestring | undefined``Zusätzlicher Untertitel.
labelstring | undefinedChatBeschriftung beziehungsweise zugänglicher Name.
placeholderstring | undefinedNachricht schreiben …Hinweis bei leerer Eingabe.
emptyTextstring | undefinedNoch keine Nachrichten. Starte die Unterhaltung.Text des Leerzustands.
disabledboolean | undefinedfalseSperrt die Interaktion.
readOnlyboolean | undefinedfalseVerhindert Änderungen des Werts.
loadingboolean | undefinedfalseZeigt den Ladezustand.
sendingboolean | undefinedfalseSperrt Senden während einer eigenen laufenden Anfrage.
maxLengthnumber | undefined4000Maximale Textlänge.
typingUsersChatUser[] | undefined[]Aktuell schreibende Autoren.
showAvatarboolean | undefinedtrueZeigt Autorenbilder.
showUserNameboolean | undefinedtrueZeigt Autorennamen.
showDayHeadersboolean | undefinedtrueGruppiert Nachrichten mit Tagesüberschriften.
showMessageTimestampboolean | undefinedtrueZeigt Nachrichtenzeiten.
localestring | undefinedde-DELocale für Datums-/Zeitformatierung.

Ereignisse

EventPayload / Verhalten
update:itemsNeuer Wert von items; über v-model:items übernehmen (modelValue: v-model).
update:inputFieldTextNeuer Wert von inputFieldText; über v-model:inputFieldText übernehmen (modelValue: v-model).
messageEnteredChatMessageEnteredEvent; cancel synchron setzen, um eigene Serververarbeitung zu starten.
messageSentChatMessageEvent nach lokaler Aufnahme.
typingStartChatTypingEvent beim Beginn des Schreibens.
typingEndChatTypingEvent beim Ende des Schreibens.

Slots

SlotArgumente
header{ user }
empty()
message{ message, isOwn }
vue
<script setup lang="ts">
import { ref } from 'vue'
import { TxChat, type ChatMessage } from '@tekocloud.de/tecexpress'
import '@tekocloud.de/tecexpress/themes/index.css'
const messages = ref<ChatMessage[]>([])
</script>

<template>
  <TxChat v-model:items="messages" :user="{ id: 'me', name: 'Alex' }" />
</template>