2016-09-19 3 views
0

특정 js 라이브러리가 포함되어야하는 편집기 템플릿이 있습니다. 이 편집기가 페이지에서 사용되는 경우에만 포함되기를 원하며 사용 된 편집기의 수와 상관없이이 편집기를 한 번만 포함하고자합니다. 어떻게해야합니까? 나는이 게시물을 발견js 파일을 사용하는 경우에만 포함하는 방법

업데이트 : 나는 (내가 처음부터 그것을 놓친 방법을 모르고)을 원하는없는 것처럼 무언가를 HtmlHelpers for managing scripts for Razor Partial Views. 불행히도 내가 포함시키고 자하는 라이브러리에는 CSS가 포함되어 있습니다.이 대답은 지원하지 않습니다.

+0

'@section 스크립트 {...}를' –

+0

나는 @JamesP 검색 할 수없는 . 나는 추측 할 수 있었다. 그러나 그것은 매우 직관적으로 들리지 않는다. – Archeg

+0

원본 질문에서 원하는 것을 분명히 밝히지는 않겠습니까? –

답변

1

여러분은 Facebook이하는 것과 비슷한 것을 할 수 있습니다. 위젯에서 런타임에 스크립트 태그를 추가하고 스크립트 파일을로드하려고 시도하는 것과 유사한 코드를 추가하여 동적으로 라이브러리를로드 할 수 있습니다. 구성 요소가 렌더링되지 않으면 스크립트도로드되지 않습니다. 그냥 스크립트 섹션 만들기 위해 그것을 사용할 수 있습니다 - - 당신이 편집기 페이지에 사용되는 경우 탐지하는 데 사용하는 논리는 무엇

<script> (function(d, s, id){ 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) {return;} 
    js = d.createElement(s); js.id = id; 
    js.src = "//connect.facebook.net/en_US/sdk.js"; 
    fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
</script> 
+0

감사합니다. 이 방법이 효과가있을 수 있지만 솔루션을 좋아한다고 말할 수는 없습니다. 또한 나는 CSS를 위해 그것을 할 수 있는지 잘 모르겠다. – Archeg

관련 문제