2017-04-07 1 views
1

우리는 개찰구 (V8) 프로젝트에 대한 시도를주고있다, 나는 최고의 다음과 같은 시나리오 연습 무엇에 대해 궁금 : 우리는 데이터베이스가사용자 정의 개찰구 복잡한 데이터 모델 (아약스) 제어

  • List<ComplexObject>을 리턴하는 라이브러리 함수.
  • IModel
  • 이 모델로 뒷받침되는 d3 시각화를 렌더링하려는 경우 ComplexVisualization으로 전화를 걸자.
  • 모델을 일부 JavaScript 변수 (JSON)로 렌더링해야하므로 d3 코드에서이를 입력으로 사용할 수 있습니다.
  • 사용자는 다른 컨트롤의 일부 변경을 할 수와 같은 데이터베이스 라이브러리 호출을 생성 할 것이라는와 다른 ComplexVisualization 이에 따라 그 값을 업데이트 할 수있는 자바 스크립트 변수의 필요성을 대상 아약스로 추가하고, 일부 사용자 지정 자바 스크립트 방법을 요구한다 List<ComplexObject>
  • 이를 통해 우리는 d3 시각화를 새로 고칠 수 있습니다.

나는 누군가가 우리가이 구성 요소에 대한 일부 HTML을 (필요한 경우) 렌더링 수있는 방법에서 확장해야하며, 특히 어떻게 동기화 한 자바 스크립트 변수가있는 클래스 ComplexVisualization 지적 수있는 몇 가지 코드 예제를 찾고 있어요 IModel<List<ComplexObject>>. 도움 & 제안

감사합니다,

다니엘

답변

2

ComplexVisualization는 JSON으로 직렬화 방법 toJson()가있을 수 있습니다. 또한 그것은 "window.updateVisualization(" + toJson() +")"과 같은 문자열을 반환하는 update() 메서드를 포함 할 수 있습니다. 이렇게하면 target.appendJavaScript(complexVisualization.update())을 사용해야합니다.

JavaScript 메소드 updateVisualization은 JavaScriptHeaderItem 컨트 리뷰 션에 의해 정의되어야합니다. 내 lib.js에.

+0

'target.appendJavaScript'가 누락되었습니다! 좋아, 이것을 지적 해 주셔서 감사합니다! – Daniel

관련 문제