React, Beego 맛보기
2017-05-12 14:51 KST
React
React
React는 재사용 가능한 사용자 인터페이스(UI)를 구축하기 위한 JavaScript 라이브러리.
특징
- MVC 프레임 워크가 아닌 V(View)에 집중한 라이브러리.
- Virtual DOM 사용으로 최소한의 변경으로 높은 성능.
- UI 분리로 코드 관리가 쉬워진다.
단점
- 진입 장벽이 너무나도 높다. (익숙하지 않은 jsx문법, Virtual DOM은 또 뭐야? 서버 사이드 랜더링은 어떻게 하는 거지? 등..)
- 초기 설정이 복잡하다.
Beego
Beego
Go 언어의 Web Framwork
끝이다.
React 초기 구성
React는 js로 작성해도 되지만 React Element를 작성할 때 매우 가독성이 낮으므로 jsx로 작성하는 것을 추천.
대신 jsx를 js로 변환하는 과정이 필요하므로 귀찮다. es6 문법도 같이 쓸 것이므로 더 귀찮을 것이다.
여러 모듈을 번들해주는 webpack과 jsx, es6를 변환시켜줄 babel을 조합해서 사용한다면 컴파일에 한두 번만 에너지를 쏟으면 된다.
working directory를 잘 정하고 해당 폴더에서 npm init
로 package.json을 생성한다.
그 후 dependencies와 devDependencies를 설정해주고 npm install
.
package.json
그 후 webpack.config.js를 작성.
webpack.config.js 안에는 babel-loader를 사용하여 js파일의 문법을 바꿔주고 그 외로 js minify를 사용설정.
webpack.config.js
번들된 js는 src/static/js에 생성될 것이다.
이 후 working directory에서 webpack --watch
로 개발 중에는 번들이 자동화 되도록 한다.
js 파일이 minify되어서 react 쪽에서 에러가 나서 당황할 수도 있다. 그냥 에러 메세지가 축약되서 나오는 것이니 걱정하지 말기를 바란다.
Beego 초기설정
go get github.com/astaxie/beego
go get github.com/beego/bee
src 폴더 이동후 bee new [project-name]
그리고 bee run
끝났다.
진짜다.
index.js와 ui components
앞서 entry에 적어두었던 index.js와 html을 그릴 components를 하나 만들어준다.
components/App.js
index.js
view/index.tpl도 수정하도록 한다.
index.tpl
http://localhost:8080/ 에 접속하면 React로 로딩된 Hello React 0이 보이고 0이 1씩 늘어나는 것을 볼 수 있을 것이다.