express

    [Node, express, ejs] i18next 써서 국제화 하기 [2]

    i18next 써서 국제화 하기 [2] 전편에서는 I18next 를 써서 라우터 에서 text 를 불러온뒤에 랜더링 하는것을 해보았습니다. 하지만 이와같은 방법으로 하게되면 json 의 값을 불러오는거 밖에 안되기에 나는 view 에 바로 넣고 싶은 방법을 찾고있었습니다. 힘들게 힘들게 찾은 이 issue 에서 사용한 ejs.filters 는 더이상 사용할수가 없는 기능 이었습니다. 결국 찾아낸 것은 res.locals 에 데이터를 넣어주면 ejs 에서 res.locals의 값을 같이 가지고 간다는 정보였습니다. 따라서 하나하나 테스트 해보기로 했습니다. 먼저 어제의 소스에서 / 라우트는 추가해 줍니다 app.get('/', (req, res) => { res.render('test', { text: r..

    [Node, express, ejs] i18next 써서 국제화 하기 [1]

    i18next 써서 국제화 하기[1] 회사에서의 업무중 페이지를 국제화 시켜야 하는 업무가 생겼다. 여기서 국제화란 한개의 페이지를 여러 국가의 언어로 만들어서 말그대로 국제화 시키는것 을말한다 위와 같이 같은 구글 페이지지만 텍스트가 한글과 영어 버전이 각각 있다. 과거에는 각 언어마다 뷰 페이지를 만들었다고 한다. 즉 영어,한국어가 필요하면 복,붙 으로 2개 페이지 4개의 언어가 필요하다면 복,붙 으로 4개페이지 를 만들었어야 헀다. 당연히 이것은 유지보수에 있어서 끔찍한 결과를 초래한다. 그래서 국제화 라이브러리 들이 생겨났는데 그중에서 나는 i18next 써드파티 모듈을 쓰기로 했다. 쓰기로한 이유는 가장 최신버전을 유지하고있고 각종 프레임워크를 지원하며 공식 documentation 이 비교적 ..