gemercheung 1 yıl önce
ebeveyn
işleme
a546c637e1

+ 4 - 3
src/locales/lang/en/room.ts

@@ -11,7 +11,7 @@ export default {
     title: 'title',
     titleRequired: 'Title is Required',
     titleplaceHolder: 'Please enter up to 15 words for the title',
-    desc: 'description',
+    desc: 'Description',
     descplaceHolder: 'Please enter up to 200 words for the description',
     host: 'Hoster Infomation',
     nickname: 'Nickname',
@@ -19,7 +19,7 @@ export default {
     nicknameRequired: 'Nickname is required',
     nicknameDesc: 'Please enter up to 15 words for the host nickname',
     selectScene: 'select scenes',
-    addScene: 'add scenes',
+    addScene: 'Add scenes',
     inputSearch: 'input the keyword',
     scene: 'scene',
     name: 'name',
@@ -59,5 +59,6 @@ export default {
   usingTime1: "Duratation",
   usingTime2: "Create",
   deletedRoom: 'Deleted Studios',
-
+  oneMPicLimit:"Please upload jpg/png images within 1M.",
+  avatar:"Avatar",
 }

+ 2 - 0
src/locales/lang/zh/room.ts

@@ -58,4 +58,6 @@ export default {
   usingTime2: "创建时间",
   nodata: "您还没有房间,请先创建房间~",
   deletedRoom: '删除房间',
+  oneMPicLimit:"请上传1M以内的jpg/png图片",
+  avatar:"头像",
 }

+ 16 - 0
src/views/room/edit-room/avatar.vue

@@ -12,6 +12,7 @@
     }"
     :disabled="avatarFile.length > 0"
     @change="handleAvatarChange"
+    :before-upload="handleAvatarBeforeUpload"
   >
     <div
       class="add-item-icon scene-sign"
@@ -35,9 +36,11 @@ import { message, type UploadChangeParam } from 'ant-design-vue'
 import type { FileItem } from './album-list.vue'
 import { baseURL } from '@/env'
 import { watchEffect } from 'vue'
+import { useI18n } from '@/hook/useI18n'
 const emit = defineEmits(['sync'])
 const avatarFile = ref<any[]>([])
 const props = defineProps<{ value: string | undefined }>()
+const { t } = useI18n()
 
 watchEffect(() => {
   if (props.value?.length) {
@@ -73,6 +76,19 @@ const deleteAvatar = (item: any) => {
   }
   emit('sync', '')
 }
+const handleAvatarBeforeUpload = (file: File) => {
+  const max = file.size / 1024 / 1024 <= 1
+  if (!max) {
+    message.error(t('room.oneMPicLimit'))
+    // debugger;
+    setTimeout(() => {
+      avatarFile.value = []
+    }, 50)
+    return false
+  } else {
+    return true
+  }
+}
 </script>
 
 <style lang="scss" scoped>

+ 1 - 1
src/views/room/edit-room/index.vue

@@ -133,7 +133,7 @@
             />
           </a-form-item>
 
-          <a-form-item label="头像" name="head">
+          <a-form-item :label="t('room.avatar')" name="head">
             <EditAvatar
               v-model:value.trim="current.head"
               @sync="handleAvatarSync"