我正在使用ExpressJS进行Web开发,使用EJS作为模板引擎。 我想知道是否有任何方便的方法要求jQuery在我的EJS模板上工作。 我可以在其中一个部分,即footer.ejs中添加一个脚本标记,并将其包含在任何地方,但这会导致jQuery在所有模块中加载(我只在少数时候使用jQuery,如果需要的话)。 那么,有没有什么方法可以在特定模块中仅需要jQuery而不是将其添加为公共文件。
我阅读了shim
包含在特定模块here中的方式,但是我非常了解它如何应用于我的设置(使用ejs模板表达应用程序)。
非常感谢任何有关如何实现这一目标的合理说明。
非常感谢。
footer.ejs
//This image shows my footer partial which has jQuery as common inclusion.
[
form.js
//This is my script file which has jQuery as dependency
[
form.ejs
//This is how the form-validation script is being included in form template
答案 0 :(得分:0)
首先,您必须首先启用extractScripts
app.set("layout extractScripts", true);
然后,在布局中使用<%- script %>
来注入视图中的所有脚本
<html>
<head>...</head>
<body>
<script src="/path/to/jquery"></script>
<script src="/path/to/other/lib"></script>
...
<%- script %>
</body>
</html>