💻 노마드 코더에서의 twitter clone 프로젝트.
😀 준비과정
1. create-react-app 프로젝트 설치.
2. firebase 프로젝트 만들기.
3. firebase 패키지 설치.
🎈 firebase import 해주며, js파일 만들어주기.
💻 firebase.js
import firebase from "firebase/app"
const firebaseConfig = {
apiKey: "AIzaSyBg0hPYEK6DM7roObrG-N9raHQTi-yHktU",
authDomain: "twitter-18cc6.firebaseapp.com",
projectId: "twitter-18cc6",
storageBucket: "twitter-18cc6.appspot.com",
messagingSenderId: "715865745869",
appId: "1:715865745869:web:293bca02cdc5c3eec33c84"
};
export default firebase.initializeApp(firebaseConfig);
🎈 환경 변수 나눠주기.
- .env파일 나눠줘서 key보이지 않게 하기.
💻 .env
REACT_APP_API_KEY = AIzaSyBg0hPYEK6DM7roObrG-N9raHQTi-yHktU,
REACT_APP_AUTH_DOMAIN = twitter-18cc6.firebaseapp.com,
REACT_APP_PROJECT_ID= twitter-18cc6,
REACT_APP_STORAGE_BUCKET= twitter-18cc6.appspot.com,
REACT_APP_MESSAGEIN_ID = 715865745869,
REACT_APP_APP_ID = 1:715865745869:web:293bca02cdc5c3eec33c84
💻 firebase.js
const firebaseConfig = {
apiKey: process.env.REACT_APP_API_KEY,
authDomain: process.env.REACT_APP_AUTO_DOMAIN,
projectId: process.env.REACT_APP_PROJECT_ID,
storageBucket: process.env.REACT_APP_STORAGE_BUCKET,
messagingSenderId: process.env.REACT_APP_MESSAGIN_ID,
appId: process.env.REACT_APP_APP_ID,
};
📌 코드 설명
🎈 npm install react-router-dom
import {HashRouter as Router, Route, Switch} from "react-router-dom"
💻 Router.js
const AppRouter = () => {
const [isLoggedIn, setIsLoggedIn] = useState(false);
return(
<Router>
<Switch>
{isLoggedIn? (
<>
<Route exact path = "/">
<Home />
</Route>
</>
): (
<Route exact path="/">
<Auth />
</Route>
)}
</Switch>
</Router>
)
}
export default AppRouter;
📌 코드 설명
isLoggedIn
의 bool값에 의해 Route 설정 다르게.<출처 : 노마드 코더>