使用Angular </script>中的<script src =“...”>加载外部脚本

时间:2013-09-26 12:50:16

标签: angularjs angularjs-directive crocodoc

我需要在URL中包含一个会话ID的脚本(我通常不会这样做,但是我正在使用Crocodoc将文档嵌入到页面中,而且他们似乎没有其他方法可以做到这一点它没有使用不可定制的iFrame):

<!--sets a global variable "_doc" that is needed for initialization-->
  <script src="//crocodoc.com/webservice/document.js?session=tohY5vh3dPjUbmW6_imSQFshvQUsJ3fuJFyG7CxBU-E3AArTbELI3U0bSJBm6z5ZKtXpJQCnJ-EU1J2WGbuu6WH4e3Bglcy38TplHg"></script>

我尝试过简单的事情:

<script ng-src="//crocodoc.com/webservice/document.js?session={{ file.crocodoc_session }}"></script>

这会将标记写得很好,但永远不会请求脚本。我还尝试使用“src”而不是“ng-src”,但是在URL中发出“{{file.crocodoc_session}}”请求,并且在实际写入会话ID值后不再发出请求。

我尝试的最后一件事是使用编译函数创建一个指令,其中我使用jQuery来设置src属性。这工作,期望我无法弄清楚如何将会话ID传递给编译函数。我在元素上使用了“session”属性,但是当我传递一个变量(或者使用session =“{{file.crocodoc_session}}”)时,我将变量名称作为字符串而不是它的值。

1 个答案:

答案 0 :(得分:1)

尝试评估控制器内部的链接,将其分配给范围变量,然后在ng-src中引用它。