具有vue-cli 3和lerna的monorepo

问题描述 投票:0回答:1

我正在尝试使用vue-cli 3和lerna创建一个monorepo。我现在有两个软件包:

commonappcommonapp都使用Vue并将其导入。 common具有这样的主要设置。 "main": "dist/common.umd.min.js"

当我在common中导入app时,进程崩溃并显示此错误消息,试图处理common.umd.min.js

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

即使使用node --max-old-space-size=4096 node_modules/@vue/cli-service/bin/vue-cli-service.js serve运行也会引发此错误。

[如果使用"main": "src/main.ts",则构建过程有效,但是当使用vue-cli-service build时,Vue捆绑了两次,一次捆绑为common,一次捆绑为app

node.js vue.js vue-cli-3 lerna
1个回答
0
投票

就像您注意到的那样,您在应用程序中两次捆绑了Vue。这可能是因为您将Vue作为commonapp软件包的依赖项包含在内。

app软件包作为唯一依赖Vue的软件包,然后可以使common软件包导出Vue plugin。然后,您的app软件包可以安装common插件,如下所示:

// main.js (in the app package)

import Vue from 'vue';
import plugin from 'my-common-package';

Vue.use(plugin);

我不确定导致内存不足错误的原因,但是仅使用一个Vue实例是一个好的开始。

© www.soinside.com 2019 - 2024. All rights reserved.