この記事では、WeChatアプレットの具体的なコードを共有し、簡単なチャットルームを実装します。具体的な内容は次のとおりです。 チャ.js // ページ/チャット/チャット.js // ミニプログラムインスタンスを取得します。let app = getApp(); ページ({ /** * ページの初期データ */ データ: { ニックネーム:''、 アバター:''、 チャットリスト:[ { ニックネーム:「小林」, アバター:'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', 内容:`こんにちは! ` } ]、 価値がない:'' }, 送信メッセージ:関数(){ _this = this とします。 obj = { ニックネーム:_this.data.nickname, アバター:_this.data.avatar, コンテンツ:_this.data.invalue }; arr = _this.data.chatlists とします。 arr.push(オブジェクト) _this.setData({ チャットリスト:arr, 価値がない:'' }); // チャット内容をサーバーに送信し、処理後に返して、返されたデータをチャットリストに格納します}, getInput:関数(e){ console.log(e.detail.value); this.setData({invalue:e.detail.value}); }, /** * ライフサイクル機能 - ページの読み込みをリッスンする*/ onLoad: 関数 (オプション) { console.log(app.globalData.userInfo.nickName); this.setData({ ニックネーム:app.globalData.userInfo.nickName、 アバター:app.globalData.userInfo.avatarUrl }); }, /** * ライフサイクル関数 - ページの初期レンダリングの完了を待機します*/ onReady: 関数 () { }, /** * ライフサイクル機能 - モニターページ表示 */ onShow: 関数() { }, /** * ライフサイクル機能 - ページの非表示を監視する*/ onHide: 関数 () { }, /** * ライフサイクル機能 - ページのアンインストールを監視する*/ onUnload: 関数 () { }, /** * ページ関連のイベント処理関数 - ユーザーのプルダウンアクションをリッスンする */ onPullDownRefresh: 関数 () { }, /** * ページ上のボトムイベントを処理する関数*/ onReachBottom: 関数 () { }, /** * ユーザーは右上隅をクリックして共有します*/ onShareAppMessage: 関数 () { } }) チャット.wxml <block wx:for="{{チャットリスト}}" wx:for-index="ind" wx:for-item="チャット" wx:key="ind"> <view class="chat self" wx:if="{{nickname == chat.nickname}}"> <view class="right"> <view class="content"> {{チャットコンテンツ}} </ビュー> </ビュー> <view class="left"> <image class="avatar" src="{{chat.avatar}}"></image> </ビュー> </ビュー> <view class="chat" wx:else> <view class="left"> <image class="avatar" src="{{chat.avatar}}"></image> </ビュー> <view class="right"> <view class="nickname">{{chat.nickname}}</view> <view class="content"> {{チャットコンテンツ}} </ビュー> </ビュー> </ビュー> </ブロック> <view class="form"> <view class="weui-cell weui-cell_input"> <input class="weui-input" value="{{invalue}}" bindinput="getInput" placeholder="チャットの内容を入力してください" /> </ビュー> <button type="primary" bindtap="sendMsg">送信</button> </ビュー> チャット.css /* ページ/チャット/チャット.wxss */ .アバター{ 幅: 130rpx; 高さ: 130rpx; 境界線の半径: 50%; } 。チャット{ ディスプレイ: フレックス; アイテムの位置を中央揃えにします。 上マージン: 15px; } 。自己{ コンテンツの端揃え: flex-end; 上マージン: 15px; } 。左{ パディング: 20rpx; align-self:flex-start; } .self .left{ パディング上部: 0; } 。右{ 左マージン: 10px; } .right .content{ 背景色: #eee; 色: #123; フォントサイズ: 16px; /* 境界線:1px 実線 #ddd; */ パディング: 10px; 行の高さ: 26px; 右マージン: 10px; 境界線の半径: 3px; 位置: 相対的; 最小高さ: 20px; } .right .content::before{ コンテンツ: ' '; 表示: ブロック; 幅: 0; 高さ: 0; 境界線: 12px 透明の実線; 右境界線の色:#eee; 位置: 絶対; 上: 10px; 左: -23px; } .self .right .content::before{ 境界線: 0; } .self .right .content::after{ コンテンツ: ' '; 表示: ブロック; 幅: 0; 高さ: 0; 境界線: 12px 透明実線; 左境界線の色:#1ad409; 位置: 絶対; 上: 10px; 右: -23px; } .self .right .content{ 背景色: #1ad409; } 。形状{ 位置: 固定; 下部: 0; 背景色: #eee; 幅: 750rpx; ディスプレイ: フレックス; 高さ: 39px; アイテムの位置を中央揃えにします。 } .フォーム入力{ 幅: 600rpx; 背景色: #fff; 高さ: 36px; 行の高さ: 36px; パディング: 0 5px; } ボタン{ 幅:65rpx; 高さ:36px; } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Centos に PHP7.4 と Nginx をインストールする方法
>>: Windows 7 で MySQL 8.0.16 をインストールして使用する場合、パスワードの変更と Navicat への接続に関する問題が発生する
0 アイコンと画像の違いアイコンは文字であり、画像はバイナリ ストリームです。つまり、画像はアイコン...
について最近、Vue を学習する過程で、基本的な知識の練習と強化を目的として、Qunar.com の...
3G の普及により、携帯電話を使ってインターネットにアクセスする人が増えています。モバイル デバイ...
Docker は本当に素晴らしいです。特に、仮想マシンを使用する場合に比べて、Docker イメージ...
純粋な HTML + CSS を使ってドラえもんの絵を描くなど、CSS 描画に関する記事をよく見かけ...
https をサポートしていない Web サイトは、ブラウザによって徐々に安全でないとマークされるた...
エラーは次のとおりです:キャッチされない TypeError: 未定義のプロパティ 'mod...
目次序文オプション1:オプション2:オプション3:オプション4(最終的に採用されたオプション):要約...
Docker は、アプリケーションをより速く配信するのに役立つオープンソースのコンテナ エンジンです...
MySQL 基本データ型一般的な MySQL データ型の概要 ![1036857-201708011...
目次背景問題の説明原因分析シミュレーションする総括する背景日常の使用において、MySQL で個別また...
序文前回の記事では、JavaScript の 2 つのデータ型、基本型と参照型、および参照型の浅いコ...
概要Nginx では変数を使用して設定を簡素化し、設定の柔軟性を向上させることができます。すべての変...
この記事では主に、Web ページ上でデスクトップ exe プログラムを呼び出す方法を紹介します。 W...
で+ 時間 17:23に at> touch /mnt/file{1..9} ##アクションを...