cyl/master-0822
wangxia 3 months ago
parent b5d12387c7
commit ffd1a287fc

@ -30,7 +30,6 @@
<!-- </div> --> <!-- </div> -->
<u-popup v-model="jobListShow" mode="bottom" z-index="999999" border-radius="12" :closeable="false" :mask-close-able="true" :mask="true" @close="jobListShow = false"> <u-popup v-model="jobListShow" mode="bottom" z-index="999999" border-radius="12" :closeable="false" :mask-close-able="true" :mask="true" @close="jobListShow = false">
<div class="" @click="sendMsg">123123</div>
<scroll-view :scroll-y="true" @scrolltolower="reachBottom" class="g_bg_ed" style="height: 90vh"> <scroll-view :scroll-y="true" @scrolltolower="reachBottom" class="g_bg_ed" style="height: 90vh">
<div class=""> <div class="">
<div class="m-search g_p_10 g_pt_8 g_position_rela g_flex_1 g_bg_ed sticky" style id="searchInputBox"> <div class="m-search g_p_10 g_pt_8 g_position_rela g_flex_1 g_bg_ed sticky" style id="searchInputBox">

@ -66,10 +66,17 @@
<!-- {{ssff}}键盘高度{{keyHeight}} 输入框距离底部距离{{writeStyle}}屏幕高度{{screenHeight}}顶部聊天区域高度{{msgKeyHeight}} --> <!-- {{ssff}}键盘高度{{keyHeight}} 输入框距离底部距离{{writeStyle}}屏幕高度{{screenHeight}}顶部聊天区域高度{{msgKeyHeight}} -->
<input v-show="!showEmojiInput" :focus="isFocus" class="msg-input-input g_flex_1" :maxlength="-1" :placeholder="isTeamMute ? t('teamMutePlaceholder') : t('chatInputPlaceHolder')" v-model="inputText" type="text" :disabled="isTeamMute" :confirm-hold="true" cursor-spacing="20" :adjust-position="pushUp" confirm-type="send" @keyboardheightchange="keyboardheightchange" @confirm="handleSendTextMsg" @blur="handleInputBlur" @input="handleInput" id="msg-input" /> <input v-show="!showEmojiInput" :focus="isFocus" class="msg-input-input g_flex_1" :maxlength="-1" :placeholder="isTeamMute ? t('teamMutePlaceholder') : t('chatInputPlaceHolder')" v-model="inputText" type="text" :disabled="isTeamMute" :confirm-hold="true" cursor-spacing="20" :adjust-position="pushUp" confirm-type="send" @keyboardheightchange="keyboardheightchange" @confirm="handleSendTextMsg" @blur="handleInputBlur" @input="handleInput" id="msg-input" />
</div> </div>
<div class="msg-input-button" @tap="(event) => handleSendJob()">
<div class="msg-input-button" v-if="false"> <div class="iconfont icon-5gongdanguanli g_c_6 g_fs_24"></div>
<Icon @tap="handleEmojiVisible" class="g_p_6" style="padding-right: 5px" :size="28" type="icon-biaoqing" />
</div> </div>
<!-- <div class="send-more-panel-item-wrapper">
<div class="send-more-panel-item" @tap="(event) => handleSendJob()">
<div class="iconfont icon-5gongdanguanli g_c_6 g_fs_24 g_fw_600"></div>
</div>
</div> -->
<!-- <div class="msg-input-button" v-if="false">
<Icon @tap="handleEmojiVisible" class="g_p_6" style="padding-right: 5px" :size="28" type="icon-biaoqing" />
</div> -->
<div class="msg-input-button" v-if="true"> <div class="msg-input-button" v-if="true">
<Icon @tap="handleSendMoreVisible" class="g_p_6" style="padding-left: 5px; padding-right: 8px" type="send-more" :size="28" /> <Icon @tap="handleSendMoreVisible" class="g_p_6" style="padding-left: 5px; padding-right: 8px" type="send-more" :size="28" />
</div> </div>
@ -98,13 +105,13 @@
<div class="icon-text">{{ t("shootText") }}</div> <div class="icon-text">{{ t("shootText") }}</div>
</div> </div>
<div class="send-more-panel-item-wrapper"> <!-- <div class="send-more-panel-item-wrapper">
<div class="send-more-panel-item" @tap="(event) => handleSendVideoMsg('album', event)"> <div class="send-more-panel-item" @tap="(event) => handleSendVideoMsg('album', event)">
<Icon type="icon-shipin2" :size="30"></Icon> <Icon type="icon-shipin2" :size="30"></Icon>
</div> </div>
<div class="icon-text">{{ t("albumText") }}</div> <div class="icon-text">{{ t("albumText") }}</div>
</div> </div> -->
<div class="send-more-panel-item-wrapper" v-if="isApp && props.conversationType !== V2NIMConst.V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM"> <!-- <div class="send-more-panel-item-wrapper" v-if="isApp && props.conversationType !== V2NIMConst.V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM">
<div class="send-more-panel-item" @tap="handleCall(1)"> <div class="send-more-panel-item" @tap="handleCall(1)">
<Icon type="icon-audio-call" :size="30"></Icon> <Icon type="icon-audio-call" :size="30"></Icon>
</div> </div>
@ -115,7 +122,7 @@
<Icon type="icon-video-call" :size="30"></Icon> <Icon type="icon-video-call" :size="30"></Icon>
</div> </div>
<div class="icon-text">{{ t("videoCallText") }}</div> <div class="icon-text">{{ t("videoCallText") }}</div>
</div> </div> -->
<div v-if="isWeb" class="send-more-panel-item-wrapper" @tap="handleSendFileMsg"> <div v-if="isWeb" class="send-more-panel-item-wrapper" @tap="handleSendFileMsg">
<div class="send-more-panel-item"> <div class="send-more-panel-item">
<Icon type="icon-file" :size="30"></Icon> <Icon type="icon-file" :size="30"></Icon>
@ -363,72 +370,72 @@ const keyHeight = ref(350);
const msgKeyHeight = ref("100%"); const msgKeyHeight = ref("100%");
const ssff = ref(uni.getWindowInfo().safeArea.top); const ssff = ref(uni.getWindowInfo().safeArea.top);
console.log('安全域高度安全域高度安全域高度安全域高度安全域高度安全域高度',ssff); console.log("安全域高度安全域高度安全域高度安全域高度安全域高度安全域高度", ssff);
// message-input.vuekeyboardheightchange // message-input.vuekeyboardheightchange
// message-input.vuekeyboardheightchange // message-input.vuekeyboardheightchange
const keyboardheightchange = (e) => { const keyboardheightchange = (e) => {
keyHeight.value = e.detail.height; keyHeight.value = e.detail.height;
uni.$emit(events.KeyboardEvent, e.detail.height); uni.$emit(events.KeyboardEvent, e.detail.height);
uni.$emit('KeyboardHeight', e.detail.height); uni.$emit("KeyboardHeight", e.detail.height);
if (e.detail.height === 0) { if (e.detail.height === 0) {
writeStyle.value = "bottom: 0"; writeStyle.value = "bottom: 0";
uni.$emit('msgKeyHeight', '100%'); // uni.$emit("msgKeyHeight", "100%"); //
} else { } else {
// //
emojiVisible.value = false; emojiVisible.value = false;
extVisible.value = false; extVisible.value = false;
audioPanelVisible.value = false; audioPanelVisible.value = false;
sendMoreVisible.value = false; sendMoreVisible.value = false;
const systemInfo = uni.getSystemInfoSync(); const systemInfo = uni.getSystemInfoSync();
// let safeBottom = 0; // let safeBottom = 0;
// // #ifdef MP-WEIXIN // // #ifdef MP-WEIXIN
// if (systemInfo.safeAreaInsets && systemInfo.safeAreaInsets.bottom) { // if (systemInfo.safeAreaInsets && systemInfo.safeAreaInsets.bottom) {
// safeBottom = systemInfo.safeAreaInsets.bottom; // safeBottom = systemInfo.safeAreaInsets.bottom;
// } // }
// // #endif // // #endif
// // #ifdef APP-PLUS // // #ifdef APP-PLUS
// if (systemInfo.safeAreaInsets && systemInfo.safeAreaInsets.bottom) { // if (systemInfo.safeAreaInsets && systemInfo.safeAreaInsets.bottom) {
// safeBottom = systemInfo.safeAreaInsets.bottom; // safeBottom = systemInfo.safeAreaInsets.bottom;
// } // }
// // #endif // // #endif
// // // //
// // #ifdef MP-WEIXIN // // #ifdef MP-WEIXIN
// if (systemInfo.platform === 'ios') { // if (systemInfo.platform === 'ios') {
// const availableHeight = systemInfo.windowHeight - e.detail.height - ssff.value; // const availableHeight = systemInfo.windowHeight - e.detail.height - ssff.value;
// uni.$emit('msgKeyHeight', availableHeight); // // uni.$emit('msgKeyHeight', availableHeight); //
// }else{ // }else{
// const availableHeight = systemInfo.windowHeight - e.detail.height - ssff.value; // const availableHeight = systemInfo.windowHeight - e.detail.height - ssff.value;
// uni.$emit('msgKeyHeight', availableHeight); // // uni.$emit('msgKeyHeight', availableHeight); //
// } // }
const availableHeight = systemInfo.windowHeight - e.detail.height - ssff.value; const availableHeight = systemInfo.windowHeight - e.detail.height - ssff.value;
uni.$emit('msgKeyHeight', availableHeight); // uni.$emit("msgKeyHeight", availableHeight); //
writeStyle.value = `bottom: calc(${e.detail.height}px - env(safe-area-inset-bottom))`; writeStyle.value = `bottom: calc(${e.detail.height}px - env(safe-area-inset-bottom))`;
// #endif // #endif
// #ifdef APP-PLUS // #ifdef APP-PLUS
// //
let availableHeight, bottomValue; let availableHeight, bottomValue;
if (systemInfo.platform === 'ios') { if (systemInfo.platform === "ios") {
// //
availableHeight = systemInfo.windowHeight - e.detail.height - safeBottom; availableHeight = systemInfo.windowHeight - e.detail.height - safeBottom;
bottomValue = e.detail.height - safeBottom - 34; bottomValue = e.detail.height - safeBottom - 34;
} else { } else {
// //
availableHeight = systemInfo.windowHeight - e.detail.height - safeBottom - 34; availableHeight = systemInfo.windowHeight - e.detail.height - safeBottom - 34;
bottomValue = e.detail.height - safeBottom; bottomValue = e.detail.height - safeBottom;
} }
uni.$emit('msgKeyHeight', availableHeight); // uni.$emit("msgKeyHeight", availableHeight); //
writeStyle.value = `bottom: ${bottomValue}px`; writeStyle.value = `bottom: ${bottomValue}px`;
// #endif // #endif
} }
}; };
const handleInputBlur = () => { const handleInputBlur = () => {
isFocus.value = false; isFocus.value = false;

Loading…
Cancel
Save