この記事では、参考のために、WeChatアプレットのチャットルームを実装するための具体的なコードを例を通して紹介します。具体的な内容は次のとおりです。 1. 効果表示を実現する 2.部屋.wxml <view class="container" style="{{containerStyle}}"> <チャットルーム スタイル="幅: 100%; 高さ: 100%" envId="{{チャットルームEnvId}}" コレクション="{{チャットルームコレクション}}" グループID="{{チャットルームグループID}}" グループ名="{{チャットルームグループ名}}" ユーザー情報="{{ユーザー情報}}" onGetUserInfo="{{onGetUserInfo}}" getOpenID="{{getOpenID}}" </チャットルーム> </ビュー> 3.ルームjs const アプリ = getApp() ページ({ データ: { アバター URL: './user-unlogin.png', ユーザー情報: null、 ログ: false、 セッション取得: false、 リクエスト結果: ''、 // チャットルームEnvId: 'release-f8415a', チャットルームコレクション: 'チャットルーム', チャットルームグループID: 'デモ', chatRoomGroupName: 'チャットルーム', // チャットルームコンポーネントで使用される関数 onGetUserInfo: null、 getOpenID: null、 }, onLoad: 関数() { // ユーザー情報を取得する wx.getSetting({ 成功: res => { res.authSetting['scope.userInfo']の場合{ // すでに承認されているので、ポップアップウィンドウなしで直接 getUserInfo を呼び出してアバターのニックネームを取得できます wx.getUserInfo({ 成功: res => { this.setData({ アバター URL: res.userInfo.avatarUrl、 ユーザー情報: res.userInfo }) } }) } } }) this.setData({ onGetUserInfo: this.onGetUserInfo、 getOpenID: this.getOpenID、 }) wx.getSystemInfo({ 成功: res => { console.log('システム情報', res) (res.safeArea)の場合{ const { 上、下 } = res.safeArea this.setData({ コンテナスタイル: `パディングトップ: ${(/ios/i.test(res.system) ? 10 : 20) + 上}px; パディングボトム: ${20 + res.windowHeight - 下}px`, }) } }, }) }, getOpenID: 非同期関数() { (this.openid)の場合{ this.openidを返す } const { 結果 } = wx.cloud.callFunction({ 名前: 'ログイン', }) 結果.openidを返す }, onGetUserInfo: 関数(e) { if (!this.logged && e.detail.userInfo) { this.setData({ ログに記録: true、 アバター URL: e.detail.userInfo.avatarUrl、 ユーザー情報: e.detail.userInfo }) } }, onShareAppMessage() { 戻る { タイトル: 「インスタントメッセージングデモ」 パス: '/pages/im/room/room', } }, }) 4.ルーム.json { "コンポーネントの使用": { "チャットルーム": "/components/チャットルーム/チャットルーム" } } 5.部屋.wxss 。容器 { 高さ: 100%; 位置: 絶対; 上: 0; 下部: 0; 左: 0; 右: 0; パディングトップ: 80rpx; パディング下部: 30rpx; } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Windows 10 サブシステム Ubuntu (WSL) に Docker をインストールするチュートリアル (画像とテキスト付き)
>>: 複雑なSQLクエリを含むMySQLの一般的なSQL文の概要
p>「サービス」で手動で起動すると、 コンソールから起動します: 次に、...\MySQL S...
日常の開発タスクでは、データ テーブル内のグループ化フィールドに基づいて統計データを取得するために、...
この記事では、vueの大画面表示適応の具体的なコードを参考までに紹介します。具体的な内容は以下のとお...
IE6 での CSS 背景画像のちらつきバグ (IE6 の背景画像キャッシュの問題) IE6 は、背...
TS で時間を過ごした場所をいくつか記録します。 (まず、文句を言わせてください。stackover...
主キー:キーワード: 主キー機能: null にすることはできず、一意である必要があります。主キーの...
あなたはこの質問について考えたことがあるでしょうか?デュアルアクティブが構成されている場合、データル...
この記事では、参考までに、簡単な計算機を実装するためのJavaScriptの具体的なコードを紹介しま...
目次序文パブリッシュ・サブスクライバ・パターン結果電話要約する序文双方向データ バインディングとは、...
序文最近、小さなプログラムでリアルタイムにチャートを更新するという要件に遭遇しました。最初は wx-...
HTML5 と jQuery はアップロード前にローカル画像のプレビューを実装しており、その効果は...
1. Zabbixバックアップ [root@iZ2zeapnvuohe8p14289u6Z /]# ...
<br />Web デザインと制作テスト パート I 多肢選択問題 1. 単一選択問題 ...
MySQL 8.0.12 のインストールには 2 日かかり、さまざまな問題が発生しました。以下にまと...
チェックボックスは Web ページで非常によく使用されます。e コマースの Web サイトでもプラッ...