2016-12-30 3 views
4

나는 봄 부트 웹 응용 프로그램이,에. 렌더링 기술을 Angular JS로 마이그레이션하는 것을 고려하고 있습니다. 내 응용 프로그램에서JSP (또는 속도 템플릿)를 사용하여 따로 JSP를 사용하는 (그리고 속도 템플릿을 다른 응용 프로그램입니다)의 렌더링과 같은 각도 JS

, 나는 현재 컨트롤러의 일부 RequestMapping 방법을 가지고, 각각 ModelMap을 채우고 JSP 또는 속도 템플릿을 반환합니다.

봄 컨트롤러 Exmaple는 :

@RequestMapping("/somePage") 
public String somePage(ModelMap model) { 
    model.addAttribute("SomeObject", getSomeObject()); 
    return "tmpl_some_page.vm" 
} 

는 그럼 난 내 ModelMap 뷰를 렌더링 속성을 사용합니다. 내 속도 템플릿 "tmpl_some_page.vm는"

<body> 
      $someObject 
    </body> 

으로 내가 각도 JS로 마이그레이션 할 위 말했다. 지금까지 (앵귤러에서 아주 새로운) 앵귤러는 반대 방향으로 작동합니다 : 스프링 컨트롤러는 ModelMap을 채우지 않지만 앵귤러 프론트 엔드 컨트롤러는 채 웁니다.

내 질문이다 : 그것은 JSP/속도 및 각도 JS 둘을 결합 할 수 있습니다? ModelMap을 Spring 컨트롤러에 채우고 Angular 모델로 전달하여 json으로 사용할 수 있습니까?

답변

1

속도 템플릿 엔진 속도 템플릿을 렌더링 할 필요가 있기 때문에 당신이 .... 응답이 아니오 인 속도 템플릿을 렌더링 여부 각도를 요청하는 경우 .... 그러나 당신이 당신의 속도를 변환 할 경우 경우입니다 템플릿 템플릿을 누른 다음 컨트롤러에 직접 json 데이터를 반환해야 .... 당신은 자바 스크립트 파일에서 요청 범위에 액세스 할 수 없기 때문에 모델지도에 넣는 대신 .... 그래서 직접 json 반환 요청 본 json 객체를 각도 js 템플릿으로 전달합니다.

+0

내가 조금 혼란 스러워요, 내가 그냥이 이해 할 수 있습니다. 현재 요청 진행 순서는 다음과 같습니다. hit url -> 컨트롤러에서 호출 메소드 -> 속도 템플릿 렌더링. 앵귤러에서는 url을 치면 html로 렌더링되고 컨트롤러로만 접근합니다. 각도에서 –

+0

당신이 라우터를 사용하여 탐색 ..... 그것은 즉,로드를 디버깅 할 경우} {볼 이유 .... 먼저 템플릿을로드 한 후 템플릿에 데이터를 바인딩하는 다이제스트 작업을 수행 컨트롤러를 호출 이러한 태그는 모든 데이터가 바인딩되지 않았 음을 나타냅니다 ... ui-router를 사용하지 않는 경우 지시자를 컨트롤러에 바인딩하여 Ui에 배치하면됩니다. 지시어가 호출되면 컨트롤러에서 즉시 호출되고 지시문이 실행해야하는 모든 데이터가로드됩니다. – prashant