友達やグループを見つけるためのJavaScriptのLayim

友達やグループを見つけるためのJavaScriptのLayim

現在、layuiの関係者はlayim友達検索ページの構造とスタイルを提供していません。私は個人的に非常に興味があるので、自分でセットを作り、それをアップロードしてみんなと共有します。私はフロントエンド開発者ではないので、いくつかの側面は十分に網羅されていません。アドバイスをお願いします。

まずは落ち着くための効果画像を提示します

ここに画像の説明を挿入

Layim は友達を探す、グループを探す、友達を追加する、グループに参加する:

ソースコードを添付し、ポイントをダウンロードする

1. ユーザーメンバーリストのバインド

/** HTML コード*/
<textarea title="ユーザーテンプレート" id="LAY_Friend" style="display:none;">
	{{# layui.each(d.data, function(index, item){ }}
		<div class="layui-col-sm4 layui-col-md4 layui-col-lg2">
	 <div class="layui-card">
	 	<div class="アバター">
	 		<img class="layadmin-homepage-pad-img" src="{{ item.avatar }}" />
	 	</div>
	 	<div class="units">
		 	<p>{{ item.userName }}({{ item.userCode }})</p>
		 	<p>{{ item.roleNames }}</p>
		 	<p>
			 	{{# if(item.isValid == 0){ }}
			 		<button userId="{{ item.userId }}" class="addFriend layui-btn layui-btn-xs" style="background-color:#7ADDD4;">&nbsp;&nbsp;<strong>+</strong>&nbsp;&nbsp;友達&nbsp;&nbsp;</button>
			 	{{# } それ以外 { }}
			 		<span class="c_red">すでに友達です</span>
			 	{{# }}
		 	</p>
	 	</div>
	 </div>
 	</div>
 	{{# }); }}
</テキストエリア>

/** js コード */
$.ajax({
 タイプ: "get",
 URL: "../json/friend.json",
 非同期: true、
 データ: データ、
 成功: 関数 (データ) {
 	var json = データ;
 	var list = json.data;
 	if(リスト != null){
 		// データは HTML 形式に変換されます var html = laytpl(LAY_Friend.value).render({
			 データ: リスト
			});
			コントロール.html(html);
 	}それ以外{
 		control.append('<div style="color:#ccc; margin:150px 350px;">検索条件に一致するユーザーは見つかりませんでした</div>');
 	}
 }
});

2. 友達を追加する

ここに画像の説明を挿入

/**
 * 友達を追加 */
$(document).on('click', '.addFriend', function() {
	var myBut = $(this);
	var userId = myBut.attr("userId");
	// 友達追加検証インターフェースをポップアップ表示 layim.add({
		タイプ: '友達'
 、ユーザー名: user.username
 、アバター: user.avatar
 ,submit: 関数(グループ, コメント, インデックス){
			layer.msg('友達リクエストが送信されました。相手からの確認をお待ちください', { icon: 1 });
			// ボタンを変更します。myBut.parent().html('<span class="c_red">アプリケーションが送信されました</span>');
		 	// ここにプッシュ情報コードを挿入します} 
 });
});

3. プッシュ情報

ソケットプッシュを使用して友達アプリケーションを追加する

// メッセージをプッシュする var msg = {
		type: "addMsgbox", // 適当に定義、サーバー側でメッセージの種類を区別するために使用される sendType: 1, // 適当に定義、サーバー側でメッセージの種類を区別するために使用される fromId: loginUserId, // 申請者 toId: user.id, // 友人 ID groupId: group, // グループ remark: remark // 検証情報 }
websocket.send(JSON.stringify({
 	type: 'chatMsgbox' // 定義するだけです。サーバー側でメッセージの種類を区別するために使用されます。data: msg
 }));

4. 好きなのは

https://www.jb51.net/article/23188.htm

これで、layim が JavaScript で友達やグループを見つける方法に関するこの記事は終わりです。layim が友達やグループを見つける方法に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • JavaScript で右クリック メニューを統合する layim のサンプル コード
  • 配列内のオブジェクトの属性値が存在するかどうかを確認する JS 実装例
  • JavaScript 正規表現と文字列検索メソッド
  • JS で実装された一般的な検索、並べ替え、重複排除アルゴリズムの例
  • JSバイナリ検索アルゴリズムの詳細な説明

<<:  nginx keepaliveの具体的な使い方

>>:  MySQL マスタースレーブレプリケーションの実践の詳細説明 - GTID ベースのレプリケーション

推薦する

Ubuntu 20.04 では、隠し録音ノイズ低減機能が有効になります (推奨)

最近、 Ubuntu 20.04でkazamを使用して録音しているときに、問題が見つかりました。シス...

jQueryで大画面スクロール再生効果を実現

この記事では、大画面スクロール効果を実現するためのjQueryの具体的なコードを参考までに紹介します...

nginxリバースプロキシのyum設定の詳細な手順

パート0 背景社内のイントラネットサーバーは直接インターネットにアクセスすることはできませんが、外部...

ログインインターセプションを実装するためのVueルーティング

目次1. 概要2. ログインインターセプションを実装するためのルーティングナビゲーションガード1. ...

CSSアニメーション効果アニメーションの一般的なスタイル

アニメーションアニメーションを定義します。 /*アニメーションの各ステップで実行されるアクションを定...

mysql8.0 パスワードを忘れた場合の修正とネットコマンドのサービス名が無効になる問題

cmdにnet start mysqlと入力すると、プロンプトが表示されます: サービス名が無効です...

CentOS7.4 起動時の緊急モードへようこそメッセージに対する解決策

今日は仮想マシンを使って実験をしました。システムをインストールし、いくつかのオプションを最適化した後...

mysql57サービスが突然消えた問題をすぐに解決する

1つ、 G:\MySQL\MySQL Server 5.7\bin> mysqld --ini...

Linux lseek関数の使い方の詳しい説明

注:記事に誤りがある場合は、メッセージを残して指摘してください。ご協力ありがとうございます。名前名前...

MySQL の乗算と除算の精度の不一致の問題 (除算後の小数点以下 4 桁)

質問今日、プロジェクト関数を書いていたとき、金額の統計計算を行い、単位を変換する必要がありました。そ...

Vue3でカルーセルコンポーネントをカプセル化する方法

目的カルーセルコンポーネントをカプセル化して直接使用します。具体的な内容は以下のとおりです。一般的な...

Linux カーネル デバイス ドライバー 高度な文字デバイス ドライバーのメモ

/****************** * 高度な文字デバイス ドライバー ***********...

Linux/CentOS サーバー セキュリティ構成の一般ガイド

Linux はオープン システムです。インターネット上には、既成のプログラムやツールが多数存在します...

Vue ボタンの権限制御の導入

目次1. 手順1. ボタンの権限を定義する2. ストアを定義する3. 権限指示を作成する4. パーミ...

JavaScriptを使用して独自のAjax関数を定義する

ネイティブJSによって開始されたネットワークリクエストは、クエリ文字列の形でサーバーに送信されるため...