国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

簡單的小程序聊天對話窗口界面

這篇具有很好參考價值的文章主要介紹了簡單的小程序聊天對話窗口界面。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

一個簡單的微信小程序聊天對話窗口界面,包括發(fā)送文本功能

簡單的小程序聊天對話窗口界面

直接上代碼,js代碼:

// 簡單版
Page({
    data: {
        content: '',
        // 當(dāng)前登錄者信息
        login: {
            id: '2023',
            user: '大豬蹄子',
            avatar: 'https://img2.baidu.com/it/u=1581320883,910100018&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=9135844131fa04a7ad00686d88c76752'
        },
        // 聊天信息
        chatList: [{
                msgId: '2023',
                nickname: '大豬蹄子',
                avatar: 'https://img2.baidu.com/it/u=1581320883,910100018&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=9135844131fa04a7ad00686d88c76752',
                message: '一個簡單的聊天對話窗口界面',
                type: 'text',
                date: '05-02 14:24' // 每隔5分鐘記錄一次時間
            },
            {
                msgId: '2022',
                nickname: '泡椒風(fēng)爪',
                avatar: 'https://img0.baidu.com/it/u=3997048646,1811313428&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=0e1a0c5e962337e74750fba219bb3b51',
                message: '更多發(fā)送表情、視頻以及圖片功能,由于不好打包文件夾,請前往下方底部鏈接,下載完整版壓縮包.',
                type: 'text'
            },
            {
                msgId: '2022',
                nickname: '泡椒風(fēng)爪',
                avatar: 'https://img0.baidu.com/it/u=3997048646,1811313428&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=0e1a0c5e962337e74750fba219bb3b51',
                message: '該消息為撤回消息',
                type: 'custom'
            },
            {
                msgId: '2023',
                nickname: '大豬蹄子',
                avatar: 'https://img2.baidu.com/it/u=1581320883,910100018&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=9135844131fa04a7ad00686d88c76752',
                message: '嘞 對頭,解壓文件夾后,可直接使用完整版',
                type: 'text'
            },
            {
                msgId: '2022',
                nickname: '泡椒風(fēng)爪',
                avatar: 'https://img0.baidu.com/it/u=3997048646,1811313428&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=0e1a0c5e962337e74750fba219bb3b51',
                message: '若出現(xiàn)iOS不兼容現(xiàn)象,請自行調(diào)整哦',
                type: 'text',
                date: '05-04 16:05'
            },

            {
                msgId: '2022',
                nickname: '泡椒風(fēng)爪',
                avatar: 'https://img0.baidu.com/it/u=3997048646,1811313428&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=0e1a0c5e962337e74750fba219bb3b51',
                message: '沒有用蘋果手機(jī)測試?yán)?,
                type: 'text'
            },
            {
                msgId: '2022',
                nickname: '泡椒風(fēng)爪',
                avatar: 'https://img0.baidu.com/it/u=3997048646,1811313428&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=0e1a0c5e962337e74750fba219bb3b51',
                message: '該消息為撤回消息',
                type: 'custom'
            },
            {
                msgId: '2023',
                nickname: '大豬蹄子',
                avatar: 'https://img2.baidu.com/it/u=1581320883,910100018&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=9135844131fa04a7ad00686d88c76752',
                message: '請前往下方鏈接,使用完整版',
                type: 'text'
            },
            {
                msgId: '2023',
                nickname: '大豬蹄子',
                avatar: 'https://img2.baidu.com/it/u=1581320883,910100018&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=9135844131fa04a7ad00686d88c76752',
                message: '謝謝各位親的點(diǎn)贊關(guān)注和收藏',
                type: 'text'
            },
            {
                msgId: '2022',
                nickname: '泡椒風(fēng)爪',
                avatar: 'https://img0.baidu.com/it/u=3997048646,1811313428&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=0e1a0c5e962337e74750fba219bb3b51',
                message: '哈哈哈',
                type: 'text',
                date: '05-06 11:21'
            },
            {
                msgId: '2022',
                nickname: '泡椒風(fēng)爪',
                avatar: 'https://img0.baidu.com/it/u=3997048646,1811313428&fm=253&app=53&size=w500&n=0&g=0n&f=jpeg?sec=1686045994&t=0e1a0c5e962337e74750fba219bb3b51',
                message: '已滑動至最底部',
                type: 'text',
                date: '05-07 19:08'
            },
        ],
    },
    onLoad() {
        this.scrollToBottom();
    },
    // 輸入監(jiān)聽
    inputClick(e) {
        this.setData({
            content: e.detail.value
        })
    },
    // 發(fā)送監(jiān)聽
    sendClick() {
        var that = this;
        var list = this.data.chatList;
        // 獲取當(dāng)前時間
        var date = new Date();
        var month = date.getMonth() + 1;
        var day = date.getDate();
        var hour = date.getHours();
        var minu = date.getMinutes();
        var now1 = month < 10 ? '0' + month : month;
        var now2 = day < 10 ? '0' + day : day;
        // 組裝數(shù)據(jù)
        var msg = {
            msgId: this.data.login.id,
            nickname: this.data.login.user,
            avatar: this.data.login.avatar,
            message: this.data.content,
            type: 'text',
            date: now1 + '-' + now2 + ' ' + hour + ':' + minu
        }
        this.setData({
            chatList: list.concat(msg)
        }, () => {
            that.scrollToBottom();
            that.setData({
                content: ''
            })
        })
    },
    // 滑動到最底部
    scrollToBottom() {
        setTimeout(() => {
            wx.pageScrollTo({
                scrollTop: 200000,
                duration: 3
            });
        }, 600)
    },
})

wxml代碼:

<!-- 簡單版 -->
<view class="scroll-list">
    <block wx:for="{{chatList}}" wx:for-index="index" wx:for-item="item" wx:key="item">
        <view wx:if="{{item.date}}" class="show-date">{{item.date}}</view>
        <view wx:if="{{item.type=='custom'}}" class="row tips-text">
            <text>{{login.id==item.msgId?'你':item.nickname}}撤回了一條消息</text>
        </view>
        <view class="{{login.id==item.msgId?'row row-self':'row'}}" wx:else>
            <view class="{{login.id==item.msgId?'head-self':'head-friend'}}">
                <image class="avatar" src="{{item.avatar}}"></image>
            </view>
            <view>
                <view wx:if="{{login.id!=item.msgId}}" class="nick">{{item.nickname}}</view>
                <view class="{{login.id==item.msgId?'message msg-self':'message msg-friend'}}">
                    <text>{{item.message}}</text>
                </view>
            </view>
        </view>
    </block>
</view>
<!-- 發(fā)送信息 -->
<view class="footer">
    <view class="row">
        <view class="input-box">
            <textarea class="text-area" placeholder-class="placeholder" show-confirm-bar="{{false}}" cursor-spacing="30" maxlength="500"
            disable-default-padding="{{true}}"
            confirm-hold="{{true}}" hold-keyboard="{{true}}" auto-height="false" placeholder="輸入信息" bindinput="inputClick" value="{{content}}"></textarea>
        </view>
        <view class="send-btn" wx:if="{{content!=''}}">
            <text class="send-text" bindtap="sendClick">發(fā) 送</text>
        </view>
    </view>
</view>

wxss代碼:

page {
    background-color: #f1f1f1;
}

.scroll-list {
    padding-bottom: 120rpx;
}

/* 顯示時間 */
.show-date {
    text-align: center;
    font-size: 24rpx;
    padding: 15rpx 0;
    color: gray;
}

/* 每行對話樣式 */
.row {
    display: flex;
    flex-direction: row;
    padding: 20rpx;
}

/* 提示信息 */
.tips-text {
    text-align: center;
    justify-content: center;
    font-size: 28rpx;
    color: gray;
}

.row-self {
    flex-direction: row-reverse;
}

/* 頭像 */
.head-self {
    margin-left: 20rpx;
}

.head-friend {
    margin-right: 20rpx;
}

.avatar {
    width: 100rpx;
    height: 100rpx;
    border-radius: 20rpx;
    overflow: hidden;
}

.nick {
    color: gray;
    font-size: 24rpx;
    margin-bottom: 15rpx;
}

/* 消息內(nèi)容 */
.message {
    background-color: white;
    font-size: 30rpx;
    padding: 20rpx;
    display: flex;
    align-items: center;
    line-height: 45rpx;
}

.msg-self {
    border-top-left-radius: 30rpx;
    border-bottom-right-radius: 30rpx;
    color: #434343;
    background-image: linear-gradient(to right, #33ccff, #B0E2FF);
}

.msg-friend {
    border-top-right-radius: 30rpx;
    border-bottom-left-radius: 30rpx;
    color: #ffffff;
    background-image: linear-gradient(to right, #ff9933, #ff6633);
}

/* 以下為輸入框樣式 */
.footer {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9;
    background-color: white;
    border-top: 1rpx solid #f1f1f1;
}

.input-box {
    flex: 5;
    border: 1rpx solid #f1f1f1;
    border-radius: 10rpx;
}

.send-btn {
    flex: 1;
    text-align: center;
    margin-left: 10rpx;
    color: white;
    margin-top: 10rpx;
}

.send-text {
    background-color: #FF6347;
    font-size: 30rpx;
    border-radius: 10rpx;
    padding: 12rpx 20rpx;
}

.text-area {
    max-height: 180rpx;
    width: 98%;
    padding: 15rpx 10rpx;
    font-size: 30rpx;
}

.placeholder {
    font-size: 30rpx;
}

/* 隱藏滾動條 */
::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
    color: transparent;
}

json代碼:

{
  "usingComponents": {},
  "navigationBarTitleText": "聊天對話窗",
  "navigationBarBackgroundColor": "#FF6347"
}

更多功能的微信小程序聊天界面(包括發(fā)送表情、視頻、圖片),請點(diǎn)擊鏈接:
https://download.csdn.net/download/weixin_45465881/87762409文章來源地址http://www.zghlxwxcb.cn/news/detail-507002.html

到了這里,關(guān)于簡單的小程序聊天對話窗口界面的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python 圖形化界面基礎(chǔ)篇:使用彈出窗口和對話框

    在開發(fā)圖形用戶界面( GUI )應(yīng)用程序時,與用戶進(jìn)行交互的一種常見方式是通過彈出窗口和對話框。這些彈出窗口允許用戶輸入數(shù)據(jù)、進(jìn)行選擇、查看信息等。 Python 的 Tkinter 庫和一些第三方庫提供了創(chuàng)建和管理彈出窗口和對話框的方法。在本篇博客中,我們將深入探討如何

    2024年02月03日
    瀏覽(21)
  • 使用C++界面框架ImGUI開發(fā)一個簡單程序

    使用C++界面框架ImGUI開發(fā)一個簡單程序

    目錄 簡介 使用示例 下載示例 main文件 設(shè)置ImGui風(fēng)格 設(shè)置字體 主循環(huán) 添加Application類 中文編碼問題 界面設(shè)計 關(guān)于imgui_demo.cpp 創(chuàng)建??靠臻g 創(chuàng)建頁面 隱藏窗口標(biāo)簽欄 創(chuàng)建導(dǎo)航頁面 創(chuàng)建內(nèi)容頁面 隱藏控制臺窗口 打包程序 總結(jié) 待解決問題 開發(fā)優(yōu)勢 附件 ImGui 是一個用于C++的

    2024年02月13日
    瀏覽(26)
  • SpringBoot+Vue 整合websocket實(shí)現(xiàn)簡單聊天窗口

    SpringBoot+Vue 整合websocket實(shí)現(xiàn)簡單聊天窗口

    1 輸入臨時名字充當(dāng)賬號使用 2 進(jìn)入聊天窗口 3 發(fā)送消息 (復(fù)制一個頁面,輸入其他名字,方便展示效果) 4 其他窗口效果 pom依賴 WebSocketConfig.java WebSocketServer.java MessageVo.java App.vue

    2024年02月09日
    瀏覽(24)
  • 仿chatGPT或chatPDF的前端界面布局,css實(shí)現(xiàn)對話聊天布局代碼,響應(yīng)式左右分欄布局(附完整源代碼)

    仿chatGPT或chatPDF的前端界面布局,css實(shí)現(xiàn)對話聊天布局代碼,響應(yīng)式左右分欄布局(附完整源代碼)

    chatPDF或者chatGPT的界面挺簡潔的,就是一個左側(cè)的列表以及右側(cè)的對話列表,現(xiàn)在使用css實(shí)現(xiàn)這樣的布局 充分運(yùn)用了flex布局方式實(shí)現(xiàn),左右分欄,以及對話形式展示效果 下面是效果圖: ? 在手機(jī)設(shè)備看就隱藏左側(cè),右側(cè)100%適應(yīng) ?下面就是html和css的布局代碼 ?

    2023年04月22日
    瀏覽(29)
  • Flutter GetX 實(shí)現(xiàn) ChatGPT 簡單聊天界面

    Flutter 是一款跨平臺的移動應(yīng)用開發(fā)框架,而 GetX 是 Flutter 中一種簡單易用的狀態(tài)管理和路由管理工具。本篇我們將使用 Flutter 和 GetX 實(shí)現(xiàn)一個簡單的聊天界面,以與 ChatGPT 進(jìn)行交互。 我們需要在 Flutter 項目中引入 GetX 庫。在 pubspec.yaml 文件中添加以下依賴: 在 main 函數(shù)中添

    2023年04月17日
    瀏覽(22)
  • 使用Streamlit 實(shí)現(xiàn)一個聊天機(jī)器人界面

    使用Streamlit 實(shí)現(xiàn)一個聊天機(jī)器人界面

    效果如下: 只需要效果generate_llama2_response 為你的 llm的輸出即可。

    2024年03月09日
    瀏覽(98)
  • 微信小程序WebSocket實(shí)現(xiàn)stream流式聊天對話功能

    微信小程序WebSocket實(shí)現(xiàn)stream流式聊天對話功能

    要在微信小程序?qū)崿F(xiàn)聊天對話功能,回話是流式應(yīng)答,這里使用了WebSocket技術(shù)。WebSocket大家應(yīng)該都很熟悉,使用wx.connectSocket就可以了。這里可能需要注意下的是流式應(yīng)答,后端如何發(fā)送,前端如何接收。直接上代碼: 可以掃碼體驗(yàn): 后端關(guān)鍵代碼: 小程序ts代碼: 可以掃碼

    2024年04月10日
    瀏覽(29)
  • 可視化界面Tkinter編寫你的小程序

    可視化界面Tkinter編寫你的小程序

    本文將會介紹 Tkinter 模塊的使用。Tkinter 模塊是 Python 的標(biāo)準(zhǔn) Tk GUI 工具包的接口。其中Tkinter 是唯一一個 Python 內(nèi)置的標(biāo)準(zhǔn)庫,雖然它做出來的 GUI 看上去比較不美觀,但鑒于它可在多平臺運(yùn)行(Windows、Linux、macOS),因此我們可以用它來開發(fā)一些簡單的小程序;而且tk中使用的

    2024年02月09日
    瀏覽(24)
  • 編程小竅門: 一個簡單的go mutex的小例子

    本期小竅門用到了兩個組件 mutex 這個類似其他語言的互斥鎖 waitGroup 這個類似其他語言的信號量或者java的柵欄鎖 示例如下

    2024年02月13日
    瀏覽(29)
  • 完善對話框,點(diǎn)擊登錄對話框,如果賬號和密碼匹配,則彈出信息對話框,給出提示R登錄成功“,提供一個Ok按鈕,用戶點(diǎn)擊OK后,關(guān)閉登錄界面,跳轉(zhuǎn)到其他界面,

    完善對話框,點(diǎn)擊登錄對話框,如果賬號和密碼匹配,則彈出信息對話框,給出提示R登錄成功“,提供一個Ok按鈕,用戶點(diǎn)擊OK后,關(guān)閉登錄界面,跳轉(zhuǎn)到其他界面,

    如果賬號和密碼不匹配,彈出錯誤對話框,給出信息\\\"賬號和密碼不匹配,是否重新登錄\\\",并提供兩個按鈕Yes|No,用戶點(diǎn)擊Yes后,清除密碼框中的內(nèi)容,繼續(xù)讓用戶進(jìn)行登錄,如果用戶點(diǎn)擊No按鈕,則直接關(guān)閉登錄界面如果用戶點(diǎn)擊取消按鈕,則彈出一個問題對話框,給出信息

    2024年04月10日
    瀏覽(102)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包