【问题标题】:Drupal 8: where to include common scriptsDrupal 8:在哪里包含常用脚本
【发布时间】:2020-03-14 12:22:33
【问题描述】:

我正在考虑向 drupal 8 添加一个新的 javascript 库。我希望能够从其他模块/库中调用这个库。

WordPress 这样做的方式是使用wp_enqueue_scripts。使用通用库可以确保我的库只加载一次。

drupal 中的现有实现是您可以将依赖项添加到 yml 文件中的方式

js:
 dependencies:
  - core/jquery

有没有一种方法可以添加我自己的 javascript 库作为可以在我的整个 drupal 实例中使用的依赖项(所有模块和主题都应该能够将其用作依赖项)

【问题讨论】:

    标签: drupal-8 drupal-theming


    【解决方案1】:

    如果您想添加任何自定义代码,您需要创建并启用您的自定义模块或主题,您可以在 my_module.libraries.yml 文件中定义您的自定义 javascript 文件,如下所示:

    my_library:
      js:
        dist/js/my_stuff.js: {}
      dependencies:
        - core/jquery
    

    在这种情况下,您的自定义代码放在 de dist/js 文件夹中。 然后你应该将你的库添加到 Drupal。我通常使用my_module.info.yml 以这种方式定义我的自定义库:

    libraries:
      - my_module/my_library
    

    您还可以将自定义库用作依赖项:

    my_other_library:
      js:
        dist/js/my_other_stuff.js: {}
      dependencies:
        - core/jquery
        - my_module/my_library
    

    有关附加库的更多信息: https://www.drupal.org/docs/8/creating-custom-modules/adding-stylesheets-css-and-javascript-js-to-a-drupal-8-module

    关于 *.info.yml 文件的更多信息: https://www.drupal.org/docs/8/theming-drupal-8/defining-a-theme-with-an-infoyml-file

    【讨论】:

    • 我对这种做法很熟悉。实际上希望添加一个可以在附加库中调用的新依赖项。
    • 您也可以将定义的库添加为依赖项- my_module/my_library 这可以是一个依赖项
    • 这个推荐回答了我的问题。
    猜你喜欢
    • 1970-01-01
    • 2011-07-22
    • 1970-01-01
    • 1970-01-01
    • 2017-08-24
    • 1970-01-01
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    相关资源
    最近更新 更多