微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WP5 模块联合:共享深度导入

如何解决WP5 模块联合:共享深度导入

假设我有以下模块联合设置:

new ModuleFederationPlugin({
  name: 'shell',filename: 'shellDeFinition.js',shared: {
      'my-shared-lib': { singleton: true,eager: true,requiredVersion: '^1.0.0' }
  },})

这让我与遥控器共享如下导入:

import { myThing } from 'my-shared-lib';

但是,如果我想共享一个深度导入,例如以下内容怎么办?

import myThing from 'my-shared-lib/things';

使用上述设置执行此操作似乎会在主机和任何遥控器中创建模块的单独实例,这可能是可以理解的,因为我们在技术上并未共享深度导入。但是,有没有办法让模块联合这样做?

解决方法

您应该能够将深度导入为:

shared: {
  'my-shared-lib': { singleton: true,eager: true,requiredVersion: '^1.0.0' }
  'my-shared-lib/things': { singleton: true,requiredVersion: '^1.0.0' }
}

它们仍然是两个独立的块,但将由多个远程/主机共享。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。