【问题标题】:How to require jQuery in Express app with EJS template engine如何使用 EJS 模板引擎在 Express 应用程序中要求 jQuery
【发布时间】:2023-04-11 10:13:01
【问题描述】:

我使用 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

【问题讨论】:

  • 我猜你的form.js是在jquery之前加载的
  • 请不要将脚本发布为截图
  • 好的,我会记住的。但是,我可以知道为什么吗?

标签: jquery node.js express requirejs ejs


【解决方案1】:

首先,您必须先启用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>

【讨论】:

  • 我认为这可能对我有用。我将不得不对此进行一些阅读。谢谢你给我看这个。干杯!
猜你喜欢
  • 2022-12-14
  • 2018-07-07
  • 2015-12-16
  • 1970-01-01
  • 2018-12-08
  • 2020-12-24
  • 2015-05-10
  • 1970-01-01
  • 2014-10-10
相关资源
最近更新 更多