J'ai déployé beaucoup d'efforts pour développer ce projet. S'il vous est utile et inspirant, j'espère lui donner une star sur GitHub ! Cela soutient et affirme également mon travail !
Je suis également très reconnaissant à kulovecc d'avoir corrigé et soumis le problème de mise en page de débordement de texte trop long dans le projet !
introduire:
wechat-im est un modèle complet qui vous permet d'implémenter rapidement des fonctions de messagerie instantanée sur la plateforme du mini programme.
Maintenant mis à jour vers la version 2.xx
Par rapport à la version 1.0.x et aux versions précédentes, nouvelles fonctionnalités dans la version 2.xx
La syntaxe ES6 est entièrement utilisée et les opérations asynchrones utilisent le sucre de syntaxe Promise et async pour rendre le code plus sémantique ! (Nécessite des outils de développement WeChat plus récents et l'activation de la "compilation améliorée")
La fonction de saisie de texte a été composée à l'aide de Component, qui offre de meilleures performances que la version précédente !
La version minimale de la bibliothèque de base WeChat prise en charge est 2.6.1 (la version minimale prise en charge précédente était 1.4.0)
Problèmes résolus dans certains scénarios. Par exemple, lors de la lecture d'un message vocal, si vous quittez l'interface de discussion, la voix sera toujours jouée.
2.xx, veuillez le mettre à jour dans quelques jours. Les étudiants qui en sont capables peuvent le mettre à jour, la plupart étant des mises à jour de syntaxe et des composants. J'ai été assez occupé ces derniers temps, alors je suis désolé auprès de tous mes camarades de classe.
caractéristiques:
À l'heure actuelle, webSocket a été utilisé dans le projet pour réaliser la fonction de communication de IM ! Actuellement, il comprend une page de liste de sessions, une page de session et une page d'amis. Prise en charge de l'utilisation de nodejs pour ouvrir le service WebSocket local.
Prend en charge l'envoi de méthodes de saisie de texte, d'images, de voix et d'emoji
Prend en charge la prise de photos, la sélection d'images dans la galerie et la prévisualisation des images
Prise en charge de l'affichage du bouton d'envoi lors du passage à la saisie de texte.
Prend en charge la lecture vocale et la lecture d'animation.
Prend en charge la configuration de la durée minimale et maximale d'enregistrement de la voix.
Prend en charge la configuration d'événements personnalisés.
Messages de discussion de support triés par heure.
Après avoir envoyé un message, la page rebondira vers le bas.
Il utilise la dernière interface de lecture vocale et est compatible avec les interfaces de lecture vocale de version inférieure.
Mise à jour de l'état du message en cours d'envoi, envoyé avec succès et échec d'envoi
Prend en charge l'échec de l'envoi de messages, cliquez sur le bouton Renvoyer pour renvoyer.
Optimisez la logique d'affichage des bulles temporelles. Les informations adjacentes sont supérieures à 5 minutes avant que ces dernières informations ne soient affichées.
Ajout de l'affichage de l'état de la session dans l'interface utilisateur en haut de la page
Fonction personnalisée pour afficher des bulles personnalisées.
En analysant les informations des messages vocaux ou image, les fichiers locaux sont lus en premier.
L'algorithme de stockage de fichiers est mis en œuvre pour garantir que les fichiers vocaux et image dans l'espace de stockage 10M sont à jour.
Chaque type de message et chaque fonction ont été modularisés, ce qui rend la navigation dans le code agréable et simple. (En fait, cela n'est pas considéré comme une fonctionnalité d'un composant...)
Fonctionnalités non prises en charge actuellement :
Si vous souhaitez utiliser le chat de groupe, les surnoms des membres ne sont pas affichés à côté de l'avatar dans l'interface utilisateur actuelle.
Aucun message de discussion historique n’est stocké localement. Voir la fin du document pour la raison.
Actuellement, toutes les fonctions de WebSocket sont uniquement destinées à l'apprentissage et à la référence. Si vous souhaitez les utiliser commercialement, veuillez les développer vous-même.
Actuellement, il n'est pas pris en charge en tant que plug-in.
De quelles conditions avez-vous besoin pour étudier ou utiliser ce projet ?
Vous devez être familier avec les spécifications de syntaxe et les modèles de conception ES6, sinon le projet aura un seuil élevé pour vous.
WebSocket n'a pas besoin d'être maîtrisé en profondeur, mais vous devez connaître les API courantes et l'utilisation de WebSocket. Pour plus de détails, consultez le mini-programme WebSocket.
Comprendre l'installation des dépendances npm et l'exécution des commandes (ce bloc sert principalement à démarrer le service WebSocket local)
项目根目录下启动Terminal
需先安装依赖 npm install
执行 npm run server 即可开启WebSocket服务
3. Utilisez les outils de développement pour exécuter le projet
Si votre projet utilise ce framework et est officiellement mis en service, si cela vous convient, vous pouvez fournir le code QR de votre mini programme, et je peux en faire la promotion ici.
LIEN
Document
Questions
Journal des modifications
LICENCE
coopérer
Pour les échanges techniques, merci de rejoindre les groupes QQ : Groupe 1 : 821711186 (complet) Groupe 2 : 834335591
Si vous avez l'intention de coopérer ou souhaitez promouvoir vos produits, vous pouvez ajouter QQ : 1178545208.