Angular14版本的MFE是否与Angular12版本的Shell应用程序兼容?
创始人
2024-10-22 02:00:34
0

目前,Angular MFE(Micro Frontend)还没有正式发布。不过,可以通过使用 Angular 的远程模板和路由来模拟 MFE 的功能。

首先,使用 Angular CLI 创建一个新的 Angular 14 应用程序:

ng new mfe-14-app

接下来,在该应用程序中创建一个简单的组件:

@Component({
  selector: 'app-mfe14',
  template: '

Angular 14 MFE Module

' }) export class Mfe14Component {}

现在,需要在应用程序中启用远程模板。在mfe-14-app的根目录中创建一个新的webpack.config.js文件并将以下代码添加到其中:

const ModuleFederationPlugin = require('webpack/lib/container/ModuleFederationPlugin');

module.exports = {
  output: {
    publicPath: 'http://localhost:4201/',
    // 将将远程模块输出到全局变量中
    library: 'mfe14App',
    libraryTarget: 'window',
  },
  // 启用远程模板
  externals: {
    '@angular/core': 'ng.core',
    '@angular/common': 'ng.common',
    '@angular/router': 'ng.router',
  },
  plugins: [
    new ModuleFederationPlugin({
      // 标识此模块
      name: 'mfe14',
      // 公开组件
      exposes: {
        './Mfe14Component': './src/app/mfe14/mfe14.component',
      },
      // 使用远程模板
      remotes: {
        // 这将从 shell 应用程序获取所有 Angular 模块
        'shellApp': 'shellApp@http://localhost:4200/remoteEntry.js'
      },
      shared: [
        '@angular/core',
        '@angular/common',
        '@angular/router'
      ]
    })
  ]
};

要确保在 Angular 应用程序的配置中禁用自带的

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...