# 불러오는 중·오류·빈 데이터

> setLoading, setError(다시 시도), noData 문구.

Source: https://82chart.com/docs/loading-errors/

데이터를 서버에서 받는 동안 막대 모양의 자리 표시(`loading: true` 또는 `chart.setLoading(true)`)를 보여 주고, 실패하면 `setError(문구, 다시시도함수)` 로 알립니다.

```js
const chart = createChart('#chart', {
  type: 'bar',
  title: '주간 가입자',
  loading: true,
  data: { labels: [], series: [] },
});
let tries = 0;
const load = () => {
  chart.setError(null);
  chart.setLoading(true);
  setTimeout(() => {
    chart.setLoading(false);
    if (++tries === 1) return chart.setError('통계를 불러오지 못했습니다.', load);
    chart.update({ labels: ['월', '화', '수', '목', '금'], series: [{ name: '가입', data: [42, 51, 38, 64, 57] }] });
  }, 1200);
};
load();
```

| API | 설명 |
| --- | --- |
| `loading: true` / `chart.setLoading(bool)` | 자리 표시를 보이고 `aria-busy` 를 켬 |
| `chart.setError(message, retry?)` | 오류 문구와 "다시 시도" 단추. `setError(null)` 로 지움 |
| `noData` | 그릴 값이 없을 때 문구 (기본 '표시할 데이터가 없습니다') |
