Vue3 替换Vue2 的 require引入动态模块

796 阅读1分钟

vue2 实现多入口项目的时候通过Require 不同项目引入不同的依赖。
Vue3 中想实现这种功能可以通过在Plugin中通过transform 来动态替换依赖的路径,达到多入口中引入不同依赖的效果

代码如下


plugin:
        {
            name: "transform-module",
            transform(content: any, id: any) {
                if (id.includes("src/router/index.ts")) {
                    content = content.replace(
                        "/src/components/*/",
                        `/src/components/${MODULE_NAME}/`
                    );
                }

                if (id.includes("src/i18n/") || id.includes("src/main.ts")) {
                    content = content.replace(
                        "/src/components/*/",
                        `/src/components/${MODULE_NAME}/`
                    );
                }
                return content;
            }
        },