diff --git a/src/assets/images/add-icon.png b/src/assets/images/add-icon.png
new file mode 100644
index 0000000..380c0d7
Binary files /dev/null and b/src/assets/images/add-icon.png differ
diff --git a/src/components/footer-bar-btn.vue b/src/components/footer-bar-btn.vue
index 1a704e1..b0cf961 100644
--- a/src/components/footer-bar-btn.vue
+++ b/src/components/footer-bar-btn.vue
@@ -145,7 +145,7 @@ onMounted(() => {
box-sizing: border-box;
border-image: linear-gradient(115deg, #ffffff 4%, #ffffff 89%) 1.2;
backdrop-filter: blur(14px);
- box-shadow: 0px 4px 10px 0px rgba(181, 189, 216, 0.3);
+ /* box-shadow: 0px 4px 10px 0px rgba(181, 189, 216, 0.3); */
z-index: 3;
border-radius: 101rem;
}
diff --git a/src/components/footer-bar-input.vue b/src/components/footer-bar-input.vue
index e85bbc8..c915de4 100644
--- a/src/components/footer-bar-input.vue
+++ b/src/components/footer-bar-input.vue
@@ -99,8 +99,8 @@
@onFaceChoose="handleFaceChoose">
-
+
@@ -155,7 +155,6 @@ const elder = inject('elder', ref(false))
// —— 模板引用 ——
const sendMessageArea = ref(null)
const voiceInputRef = ref(null)
-const uploadImageRef = ref(null)
// —— 响应式状态(原 data)——
const sendMessage = ref('') // 输入的内容
@@ -488,12 +487,13 @@ function handleFaceChoose(face) {
})
}
-// 上传图片
+// 上传图片:底部滑出图片/拍照面板
function addUpload() {
smileFlag.value = true
emoticonClick.value = false
- addFlag.value = true
- uploadImageRef.value?.openFilePicker()
+ imageBoxShow.value = true
+ addFlag.value = !addFlag.value
+ scrollTopBody()
}
function handleImageSelected(payload) {
@@ -799,6 +799,7 @@ watch(sendMessage, (newValue, oldValue) => {
-webkit-box-sizing: border-box;
box-sizing: border-box;
align-content: flex-start;
+ align-items: flex-end;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -871,6 +872,7 @@ watch(sendMessage, (newValue, oldValue) => {
vertical-align: middle;
caret-color: #1988fe;
border: none;
+ resize: none;
overflow: hidden;
overflow-y: auto;
word-break: break-all;
@@ -900,7 +902,7 @@ textarea:-ms-input-placeholder {
.input-btn-box {
width: 30rem;
height: 30rem;
- padding: 2.5rem 5rem 0 5rem;
+ padding: 0 5rem;
vertical-align: middle;
}
@@ -953,8 +955,7 @@ textarea:-ms-input-placeholder {
}
.close-box {
- background: url('data:image/png;base64,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') no-repeat center;
- background-size: 100% auto;
+ background: url('../assets/images/add-icon.png') no-repeat center;
transform: rotate(135deg);
-webkit-transform: rotate(135deg);
-moz-transform: rotate(135deg);
@@ -963,7 +964,7 @@ textarea:-ms-input-placeholder {
}
.add-box {
- background: url('data:image/png;base64,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') no-repeat center;
+ background: url('../assets/images/add-icon.png') no-repeat center;
background-size: 100% auto;
border: 0;
}
diff --git a/src/components/upload-image.vue b/src/components/upload-image.vue
index 418a2c4..60c3d32 100644
--- a/src/components/upload-image.vue
+++ b/src/components/upload-image.vue
@@ -1,11 +1,25 @@
-
+
-
diff --git a/src/main.js b/src/main.js
index add728f..26b7909 100644
--- a/src/main.js
+++ b/src/main.js
@@ -7,6 +7,7 @@ import pinia from './store'
import { useAppStore } from './store/app.js'
import Vant from 'vant'
import 'vant/lib/index.css'
+import '@/assets/style/common.css'
import Vue3Lazyload from 'vue3-lazyload'
import { Post } from './utils/https'
import imageService from './utils/imageService'