react 파일 추가 위치 public src

    

 React 프로젝트에 JSON 데이터베이스 파일을 추가하는 방법은 여러 가지가 있습니다. 파일을 어디에 배치할지는 주로 프로젝트의 구조와 데이터 파일의 용도에 따라 달라집니다. 일반적인 방법은 `public` 또는 `src` 디렉토리 내에 JSON 파일을 두는 것입니다.


### 1. `public` 디렉토리

`public` 디렉토리에 JSON 파일을 두면, 이 파일은 정적 자산으로 간주되며, 애플리케이션이 빌드될 때 그대로 복사됩니다. 이를 통해 서버에서 직접 JSON 파일에 접근할 수 있습니다.


#### 파일 위치

```

my-react-app/

├── public/

│   ├── index.html

│   ├── ...

│   ├── data.json

└── src/

    ├── App.js

    ├── ...

```


#### 파일 접근

이 경우, JSON 파일을 fetch API를 사용하여 접근할 수 있습니다.


```js

// src/App.js

import React, { useEffect, useState } from 'react';


function App() {

  const [data, setData] = useState(null);


  useEffect(() => {

    fetch('/data.json')

      .then((response) => response.json())

      .then((data) => setData(data));

  }, []);


  return (

    <div className="App">

      {data ? (

        <pre>{JSON.stringify(data, null, 2)}</pre>

      ) : (

        <p>Loading data...</p>

      )}

    </div>

  );

}


export default App;

```


### 2. `src` 디렉토리

`src` 디렉토리에 JSON 파일을 두면, 이 파일은 JavaScript 모듈로 import 할 수 있습니다. 이 방법은 정적 데이터를 포함시키는 경우에 유용합니다.


#### 파일 위치

```

my-react-app/

├── public/

│   ├── index.html

│   ├── ...

└── src/

    ├── App.js

    ├── data.json

    ├── ...

```


#### 파일 접근

이 경우, JSON 파일을 import 문을 사용하여 접근할 수 있습니다.


```js

// src/App.js

import React from 'react';

import data from './data.json';


function App() {

  return (

    <div className="App">

      <pre>{JSON.stringify(data, null, 2)}</pre>

    </div>

  );

}


export default App;

```


### 결론

- **`public` 디렉토리**: 서버에서 직접 JSON 파일에 접근해야 하거나, 클라이언트에서 동적으로 로드해야 하는 경우에 적합합니다.

- **`src` 디렉토리**: 정적 데이터를 포함시키는 경우에 적합합니다.

  • public 디렉토리에 JSON 파일을 두는 경우:

    • 서버에서 직접 URL을 통해 접근할 수 있습니다.
    • 동적 로드를 통해 데이터를 주고받을 수 있습니다.
    • 프로젝트 빌드 시 파일이 그대로 복사됩니다.
  • src 디렉토리에 JSON 파일을 두는 경우:

    • JavaScript 모듈로서 import하여 사용할 수 있습니다.
    • 정적인 데이터를 포함시키기 적합합니다.
    • 프로젝트 빌드 시 파일이 번들링됩니다.

프로젝트의 요구 사항에 따라 적절한 위치를 선택하면 됩니다. 데이터가 동적으로 변경될 가능성이 있거나 외부에서 로드해야 한다면 public 디렉토리를 사용하고, 그렇지 않고 정적인 데이터라면 src 디렉토리를 사용하는 것이 좋습니다.

프로젝트의 요구사항과 데이터 파일의 용도에 따라 적절한 방법을 선택하면 됩니다.

댓글

이 블로그의 인기 게시물

js 스트링에서 요소 갯수 세기

STUDY

javascript cheatsheet