使用相同的外部JS库(例如Angular)的Drupal 8多个自定义模块

三合会

我被带到需要多个使用Angular.js的自定义模块的Drupal 8项目。向每个模块提供Angular文件的最佳方法是什么?

现在,每个模块都引用googleapis.com托管的远程Angular文件my-module.libraries.yml

my-module:
  version: 1.x
  js:
    https://ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular.min.js: { type: external, minified: true }
    https://ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular-sanitize.min.js { type: external, minified: true }
    js/my-module.js: {preprocess: false}
  dependencies:
    - core/jquery
    - core/jquery.ui
    - core/jquery.ui.accordion

但是,我更喜欢在本地托管Angular文件,并将它们作为依赖项列出,就像jQuery一样。

我知道我可以将Angular文件放在模块本身中,但是每个模块都需要自己的副本。

无论采用哪种适当的方法,我的目标都是在本地托管Angular文件,并从依赖于Angular的每个模块中引用它们。

三合会

解决此问题的最简单方法是/libraries在Drupal项目的根目录中添加一个文件夹。然后为您正在使用的每个外部库创建一个子目录,并从module.libraires.yml文件中引用该子目录

例如,我创建了/libraries/angular/js,将文件放置在其中,然后通过/在下面的代码中以a开头来引用它们

my-module:
  version: 1.x
  js:
    /libraries/angular/js/angular.min.js: {}
    /libraries/angular/js/angular-sanitize.min.js: {}
    js/my-module.js: {}
  dependencies:
    - core/jquery

现在,项目中的任何模块都可以引用相同的文件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Drupal 8自定义模块库

Drupal多个ajax调用到自定义模块

Drupal 8自定义模块添加php类

通过 Drupal 8 中的控制器创建用于呈现自定义表单的自定义模块

Drupal 8使用自定义模块添加JavaScript并在挂钩中传递数据

Drupal 8 自定义模块 - 使用 hook_update_N 从 YML 文件安装附加配置

如何管理Drupal自定义模块?

在Angular 2(RC5)中使用多个自定义模块

Drupal-8,将CSS添加到自定义模块

Drupal 8自定义块(模块)创建树枝模板文件

Drupal 8 在自定义模块中呈现用户配置文件表单

为什么在Drupal 8中卸载后不会自动删除自定义模块中的配置

Drupal 8 或 9 将数据从自定义模块保存到内容类型

Angular找不到自定义模块

Angular的子模块的自定义RouteReuseStrategy

使用自定义模块应用primeng

带有外部 Python 库的 Odoo 自定义模块

在drupal 8自定义模块中,使用密码创建Excel文件,写入数据和锁定文件?

Drupal 8以编程方式创建带有多个提交按钮的自定义表单

使用现有CNN模块的Pytorch自定义模块

Angular Elements:可以从功能模块项目结构中使用多个自定义 Web 组件吗?

Angular 8 中的自定义验证

Drupal 8自定义模块-如何在管理区域中创建一个字段,然后在我的模块中提取该输入以使用?

AngularJS在自定义服务中使用angular模块

Drupal 7模块自定义JavaScript AJAX函数调用

具有不同主题的 Drupal 7 自定义模块

自定义模块中的Drupal搜索功能

自定义Drupal模块中的静态HTML页面

导入自定义NPM库时无法在模块外部使用import语句