2016-09-19 66 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