• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

Promise.all관련 질문 ("여러 이미지 미리보기" 중...)

22.12.16 21:25 작성 조회수 178

0

안녕하세요. 먼저 좋은 강좌 만들어 주셔서 감사드립니다.

아래 코드에서 "async"부분은 없어도 괜찮지 않나요?

promise.all의 매개변수는 Promise 객체의 배열이면 조건에 만족하는 것으로 알았었습니다. async를 해줘야 하는 이유가 있나요?


const UploadForm = () => {
  const { setImages, setMyImages } = useContext(ImageContext);
  const [files, setFiles] = useState(null);
  const [previews, setPreviews] = useState([]);
  const [percent, setPercent] = useState([]);
  const [isPublic, setIsPublic] = useState(true);
  const [isLoading, setIsLoading] = useState(false);

  const imageSelectHandler = async (event) => {
    const imageFiles = event.target.files;
    setFiles(imageFiles);

    const imagePreviews = await Promise.all(
      [...imageFiles].map(async (imageFile) => {
        return new Promise((resolve, reject) => {
          try {
            const fileReader = new FileReader();
            fileReader.readAsDataURL(imageFile);
            fileReader.onload = (e) =>
              resolve({ imgSrc: e.target.result, fileName: imageFile.name });
          } catch (err) {
            reject(err);
          }
        });
      })
    );

    setPreviews(imagePreviews);
  };

위 코드에서 아래 부분입니다. (질문드리는 부분)

: ... map(async (imageFile).....

const imagePreviews = await Promise.all(
      [...imageFiles].map(async (imageFile) => {
        return new Promise((resolve, reject) => {

 

답변 1

답변을 작성해보세요.

0

네네 그 부분은 없어도 됩니다! await 하는게 없네요