2012-10-05 2 views
4

자바 스크립트 시각화 라이브러리 (dygraphs) 용 GWT 라이브러리를 작성했습니다.
JSNI을 사용하여 dygraphs 코드를 호출하는 간단한 래퍼입니다.
지금까지 dygraphs.js 스크립트를 GWT 모듈 xml 파일에 포함 시켰습니다. 단지 으로 잘 처리되었습니다.외부 Javascript 스크립트가있는 GWT 라이브러리

그러나 최근에 SuperDevMode을 사용하려고하면 스크립트 태그를 허용하지 않는 xsiframe linker으로 전환해야했습니다.
크로스 사이트 링커가있는 GWT 라이브러리에 외부 JavaScript 스크립트를 포함시키는 것이 가장 좋은 방법은 무엇입니까?

제가 생각할 수있는 가장 좋은 점은 ClientBundleTextResource이라는 자바 스크립트 파일을 포함시킨 다음 ScriptInjector을 사용하는 것입니다.

이 방법이 권장되는 방법입니까 아니면 더 좋은 방법입니까?

내 GWT 래퍼를 사용하는 앱이 액세스하기 전에 dygraphs.js가 완전히로드되었는지 확인해야합니다.

답변

1

외부 자바 스크립트를 TextResource로 포함시키고 직접 삽입하는 것이 앱과 함께로드되도록하는 좋은 방법입니다. (그리고 GWT 캐시 메커니즘의 혜택을 누리고있는 동안 여분의 http 요청을 저장하고 있습니다)

씬 클라이언트에서 실행중인 경우 DOM의 실제 주입을 구문 분석과 분리 할 수 ​​있습니다. textresource 위에서 아래로 주석을 달고 나중에 제거하십시오.

+0

JSNI에 넣으면 컴파일러가 간단한 이름 바꾸기와 인라이닝을 수행 할 수 있습니다. 라이브러리가'with '를 사용한다면 여기를 잡아라. - GWT JSNI는'with'를 지원하지 않는다. –

+0

gwt 2.5는 생성 된 자바 스크립트를 최적화합니다. 2.5 이하는 모두 –

+1

피드백에 감사드립니다. 나는 기본적으로 다음과 같은 접근 방식을 따랐다. (http://stackoverflow.com/questions/8744663/how-to-insert-twitter-widget-into-a-gwt-view) 예외적으로 나는 비동기 요청 대신 인라인 자바 스크립트를 사용한다. . –