JSP
상에서 handlebars
를 사용할 때, Controller
에서 ModelAttribute
넘겨줄 시에, 데이터로 사용 할 값은 그냥 오브젝트 넘겨줄 경우, 오브젝트 형태로 넘어가기 때문에, handlebars
에서 데이터로 사용하기 어렵다.
[Category(id="asdfasdf", name="asdfasdf"), Category(id="asdfadf", name="asdfadf)]
위와 같이 오브젝트 타입까지 넘겨지게 된다. 그렇게 되면,JSON.parse
를 통해 배열로 만들 수 없기 때문에, JSON string
형태로 controller
에서 넘겨주면 아래와 같이 사용할 수 있다.
modelMap.addAttribute("Categories", JsonUtils.write(categories));
위와 같이 넘기게 되면, 아래와 같이 데이터가 구성 된다.
[{id="asdfasdf", name="asdfasdf"}, {id="asdfasdf", name="asdfasdf"}]
그럼 아래처럼 JSON.parse
를 이용해 string -> object
형태로 바꿔 주면 된다.
var data = {
Categories: '${CategoriesJson}'
};
console.log(typeof data.Categories);
console.log(JSON.parse(data.Categories));
왜 이걸 모르고 있었나... 한심하구나...
반응형
'Spring > Spring 이야기' 카테고리의 다른 글
@ConfigurationProperties (Spring Boot) (0) | 2022.09.28 |
---|---|
logback에서 maxHistory 이슈 (0) | 2021.06.13 |
#Today #Error #삽질 (0) | 2017.01.25 |
Web 개발시 편리한 도구 - LiveReload (0) | 2016.09.27 |
[Spring framework] 공부를 해보자 4탄 (0) | 2016.08.30 |