2

我目前正在使用 Angular Elements,更具体地说,我正在尝试使多个元素相互通信和交互。就我而言,我尝试创建的两个元素共享一个外部库(ag-grid),使它们能够显示用户可以与之交互的高级表格。

我的问题是关于这两个元素的捆绑。目前,我正在使用 ngx-build-plus 分别构建这两个元素。输出给了我 2 个 main.js、2 个 scripts.js、2 个 polyfills.js、... 文件,我的目标是每个元素有 1 个 main.js 文件,并且只有 1 个 scripts.js 文件可以在所有的元素。

ngx-build-plus 允许我们创建一个 webpack.external.js 来列出要共享的依赖项:

module.exports = {
    "externals": {
        "rxjs": "rxjs",
        "@angular/core": "ng.core",
        "@angular/common": "ng.common",
        "@angular/common/http": "ng.common.http",
        "@angular/platform-browser": "ng.platformBrowser",
        "@angular/platform-browser-dynamic": "ng.platformBrowserDynamic",
        "@angular/compiler": "ng.compiler",
        "@angular/elements": "ng.elements",

        // Uncomment and add to scripts in angular.json if needed
        // "@angular/router": "ng.router",
        // "@angular/forms": "ng.forms"
    }
}

我一直在尝试将 ag-grid-angular 添加到此文件以及 angular.json 中的“脚本”数组中,但我没有取得任何成功,因为我对 Angular 或 Angular Elements 没有太多经验。

4

0 回答 0