Vue 3 구성 API에서 'this.$refs'를 사용하는 방법은 무엇입니까?
P粉420958692
P粉420958692 2023-12-26 16:42:38
0
1
475

vue 구성 API를 사용하여 업로드하려고 합니다. 업로드가 잘 되는 동안 재설정 버튼을 눌렀을 때 재설정하고 싶은데 컴포지션 API에서는 접근이 안되네요$refs.filethis.$refs.file .

<template>
  <input type="file" class="absolute w-0 h-0 invisible opacity-0" @change="handleImageSelected" ref="file" accept="image/*">
  <button @click="$refs.file.click()">Upload</button>
  <button @click="resetUploadFile">Reset</button>
</template>

<script setup>
import {ref} from 'vue'

const imageFile = ref()
const imageUrl = ref()

function handleImageSelected(e) {
  if (!e.target.files.length) return;
  imageFile.value = e.target.files[0];
  console.log(e.target.files[0])
  let reader = new FileReader();
  reader.readAsDataURL(imageFile.value);
  reader.onload = e => {
    imageUrl.value = e.target.result;
  };
}

function resetUploadFile() {
  this.$refs.file.target.value = null
  imageFile.value = null
  imageUrl.value = null
}
</script>

P粉420958692
P粉420958692

모든 응답(1)
P粉762447363

해야 할 일, 처음에는 getCurrentInstance 구성 요소를 포함해야 합니다. const instance = getCurrentInstance();然后您需要执行 instance.refs.file.value = null 요약하면 구성 요소는 다음과 같아야 합니다.

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿