【问题标题】:When on Moovweb, does the javascript have to bundled into one file?在 Moovweb 上时,javascript 是否必须捆绑到一个文件中?
【发布时间】:2013-04-08 23:52:07
【问题描述】:

我正在使用 Moovweb SDK。到目前为止,我使用的所有 javascript 都已放入 javascript 的“main”文件夹中,并在该文件夹中捆绑到 main.js 文件中。我们是否可以拆分 javascript 文件,只在每个页面包含我们需要的内容,而不是将所有脚本捆绑在一起?

【问题讨论】:

    标签: javascript moovweb


    【解决方案1】:

    要使用 Moovweb SDK 添加单个 Javascript 文件,请在相应的 TS 文件中使用 insert() 函数。

    您可以使用以下方法从项目的 assets/ 文件夹中添加单个 Javascript 文件:

    insert("script", type: "text/javascript", src: asset("javascript/MY_JS_FILE.js"))
    

    您也可以使用相同的技术添加远程托管的 Javascript 文件:

    insert("script", type: "text/javascript", src: "//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js")
    

    如果您希望在整个网站中添加此 Javascript 文件,您可以将代码行添加到 html.ts 文件中。如果您只想在主页上使用此 Javascript 文件,请将代码行放在 pages/home.ts 文件中。等等……你明白了!


    默认情况下,与docs 一样,Moovweb SDK 将所有 JS 文件放在assets/javascript/main 中,将其捆绑并作为main.js 提供。

    使用上述技术,您可以轻松不使用捆绑,而是单独提供 JS 文件。

    【讨论】:

      【解决方案2】:

      您还可以将 JavaScript 范围限定为仅适用于某些页面。

      如果您遵循将类添加到所有转换页面的正文的约定,那么您可以轻松地使用它来识别您的 JavaScript 在哪些页面上运行。

      例如:

      x$(document).on("DOMContentLoaded", function() {
        x$("body._home").each(function() {
          // my javascript
        });
      });
      

      将仅在正文具有“_home”类的页面上运行您的 JS。

      这样您的 JavaScript 仍然与其他脚本捆绑在一起。

      【讨论】:

        猜你喜欢
        • 2015-02-12
        • 2017-11-04
        • 2022-05-20
        • 1970-01-01
        • 1970-01-01
        • 2012-04-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多