[error/TypeScript]Type 'number[] | null | undefined' is not assignable to type 'number[]'.

zzzzsb·2022년 12월 6일
0

error-log

목록 보기
2/4

Error

하지만 우리는 반드시 null 값이 들어오지 않는다는 보장이 있다고 하자. 어떻게 해야할까?

해결방법

Non-null assertion

해당하는 변수의 마지막에 ! 키워드를 이용하면 (post-fix), 이 변수는 절대로 null 값이 아니라는 걸 알리려고 쓴다.
더이상 null 값을 분기처리하지 않아도 되며 type annotation을 같이 사용할 수 있다.

단, 이 경우 코드상으로 절대로 null 값이 들어오면 안되므로, 확실한 경우에만 사용해야 한다.

if (chart === "year") {
    chartData = yearChartData;
    chartData.datasets[0].data = data;
    console.log(chartData.datasets[0].data);

    //curData.datasets[0].data = data;
  } else if (chart === "week") {
    chartData = weekChartData;
}
if (chart === "year") {
    chartData = yearChartData;
    chartData.datasets[0].data = data!; // 수정한 부분
    console.log(chartData.datasets[0].data);

    //curData.datasets[0].data = data;
  } else if (chart === "week") {
    chartData = weekChartData;
}

참고자료

profile
성장하는 developer

0개의 댓글