| | |
| | | :showUploadList="false" |
| | | accept=".jpg,.jpeg,.gif,.png,.webp" |
| | | > |
| | | <a-button type="primary"> |
| | | <a-button type="primary" v-bind="{ ...getButtonProps }"> |
| | | {{ t('component.upload.imgUpload') }} |
| | | </a-button> |
| | | </Upload> |
| | | </div> |
| | | </template> |
| | | <script lang="ts"> |
| | | import { defineComponent } from 'vue'; |
| | | import { defineComponent, computed } from 'vue'; |
| | | |
| | | import { Upload } from 'ant-design-vue'; |
| | | import { useDesign } from '/@/hooks/web/useDesign'; |
| | |
| | | fullscreen: { |
| | | type: Boolean, |
| | | }, |
| | | disabled: { |
| | | type: Boolean, |
| | | default: false, |
| | | }, |
| | | }, |
| | | emits: ['uploading', 'done', 'error'], |
| | | setup(_, { emit }) { |
| | | setup(props, { emit }) { |
| | | let uploading = false; |
| | | |
| | | const { uploadUrl } = useGlobSetting(); |
| | | const { t } = useI18n(); |
| | | const { prefixCls } = useDesign('tinymce-img-upload'); |
| | | |
| | | const getButtonProps = computed(() => { |
| | | const { disabled } = props; |
| | | return { |
| | | disabled, |
| | | }; |
| | | }); |
| | | |
| | | function handleChange(info: Recordable) { |
| | | const file = info.file; |
| | |
| | | handleChange, |
| | | uploadUrl, |
| | | t, |
| | | getButtonProps, |
| | | }; |
| | | }, |
| | | }); |