• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

({this.movies}); 에서 movies가 에러나는 이유를 모르겠습니다 ㅠㅠ

21.06.14 04:43 작성 조회수 521

1

이게 에러나서 그런지

movies;

images;

likes;

_currentKeyword; 얘네도 다 에러나네요.. 아시는분 댓글좀요 !!

List<Moviemovies;
List<Widgetimages;
List<Stringkeywords;
List<boollikes;
int _currentPage = 0;
String _currentKeyword;

답변 10

·

답변을 작성해보세요.

3

장주명님의 프로필

장주명

2021.06.27

아마도 이런 에러가 나타날 겁니다.

Non-nullable instance field 'movies' must be initialized.
Try adding an initializer expression, or a generative constructor that initializes it, or mark it 'late'.
dart(not_initialized_non_nullable_instance_field)
List<Movie> movies

이는 이번에 플러터가 nullable 정책을 바꿔서 일어난 것으로

late List<Movie> movies;

이렇게 변경하면 됩니다.

1

halfwing1998님의 프로필

halfwing1998

2021.12.22

initState 부분까지 입니다. 플러터가 null 값을 신경 많이 쓰네요 참고 바랍니다

import 'package:flutter/material.dart';
import 'package:fluuterandfirebase/model/model_movie.dart';
class CarouselImage extends StatefulWidget {

  final List <Movie> ? movies;
  CarouselImage({this.movies});
   _CarouselImageState createState() => _CarouselImageState();

}

class _CarouselImageState extends State<CarouselImage> {
  List<Movie> ? movies;
  List<Widget> ? images;
  List<String> ? keywords;
  List<bool> ? likes;
  int _currenetPage =0;
  String ? _currentKeyword;
 
  @override

  void initState() {

    super.initState();

    movies = widget.movies;
    images = movies?.map((e) => Image.asset(e.poster)).toList();
    keywords = movies?.map((e) => e.keyword).toList();
    likes = movies?.map((e) => e.like).toList();
    _currentKeyword = keywords![0];

}

0

도멈멈님의 프로필

도멈멈

2022.08.19

environment:

  sdk: ">=2.11.0 <3.0.0"

 

로 sdk 버전을 낮춰서 해결했네요

0

신종원님의 프로필

신종원

2022.03.07

이렇게 사용하시면 됩니다.

 

class CarouselImage extends StatefulWidget {
  final List<Movie> movies;
  CarouselImage({required this.movies});
  _CarouselImageState createState() => _CarouselImageState();
}

0

강상수님의 프로필

강상수

2022.02.21

SDK 버전 낮춰서 null safety를 꺼도 됩니다.

아니면 {}를 없애면 됩니다. 

0

yongsoocho님의 프로필

yongsoocho

2021.08.21

final List<Movie> movies; 이부분을

final dynamic movies 로 바꾸면 오류없이 잘됩니다^^

{this.movies} nullable 로 바뀌어요

나머지는 late 붙이면 됩니다

0

전가현님의 프로필

전가현

2021.07.12

저도 잘 모르지만 null safety 때문이지 않나요? 저는 

List<Movie>? movies; 

List<Widget>? images;

이런식으로 값이 아직 안들어와있는 상태에서는 ? 이걸로 해주시거나

앞에 late 를 붙여주시면 될거같슴다.

this.movie또한 

final List<Movie>? movies; 로 해주면 @requ를 하지않아도 에러는 사라집니다.

0

Yong Jang님의 프로필

Yong Jang

2021.07.10

이렇게해도 this.movies 에러는 안잡히지 않나요? 

0

1017toa님의 프로필

1017toa

2021.06.25

저도요 ㅠ

0

nandev님의 프로필

nandev

2021.06.15

저도 그런데 어떻게 해결해야하죠 뜨힉