인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

GO님의 프로필 이미지
GO

작성한 질문수

Flutter로 SNS 앱 만들기

게시글 삭제 기능 추가

플러터에서 forEach문 보다 for룹을 사용을 권장하는 문제와 context 바로사용으로 체크메세지가 많이 뜨시는분들

해결된 질문

작성

·

141

1

안녕하세요 강의 잘보고있습니다.

그런데 vs코드가 삭제로직에 사용된 2군데의 forEach 룹중 한군대의 forEach룹을 자동으로 for in 룹으로 변경하길레 살펴보니

플러터에서는 forEach문 사용이 권장되지 않는다는걸로 보입니다. 예를들어 삭제함수의

void _deleteImage(List<String> imageUrls) { imageUrls.forEach((element) async { await firebaseStorage.refFromURL(element).delete(); }); }

의 코드는

  void _deleteImage(List<String> imageUrls) async {
    for (String imageUrl in imageUrls) {
      await firebaseStorage.refFromURL(imageUrl).delete();
    }
  }

로 수정하면 되는것 같네요.

 

또 VSCode에서 context를 함수바디에 바로 사용하는 문제로 체크메세지가 너무 많이 뜨는데

대표적으로 feed_card_widget.dart 파일

삭제버튼의 onPressed:(){} 내에

LikeProvider,ProfileProvider를 호출하는 부분들의 context를 바로 사용하는것보다

 

final likeProvider = context.read<LikeProvider>();

이런식으로 변수에 담아서 호출하는 방식을 사용하라는 것 같습니다.

 

큰문제는 아닌데 강의보시는분들 참고하세요

 

답변 1

0

DEV MOO님의 프로필 이미지
DEV MOO
지식공유자

안드로이드 스튜디오의 lint 에서는 경고 메시지가 출력되지 않아서 확인을 못했습니다.

감사합니다.

GO님의 프로필 이미지
GO

작성한 질문수

질문하기