如果使用纱线链接的包

问题描述

我在 GitHub 上托管了一个私有的 npm 包。该包本质上是一个 Vue 组件,我使用 vue-cli-service build --target lib --name init-map src/main.ts 构建它。以下是 main.ts内容

import InitMap from "./components/InitMap.vue";

export { InitMap };

我在我的另一个项目中使用了这个包,我同时开发了它们。因此,我想链接包:yarn link(在包目录中),然后在消费项目目录中的yarn link @smellyshovel/init-map

问题是,当我在主项目中运行“yarn serve”(即 vue-cli-service serve)时,它冻结了 69%...

The freeze

...而且似乎永远保持这样。

Axios 对我来说似乎不是问题(即使有消息),因为 1) 没有链接的包一切正常,2) 它有时会显示不同的消息(与 58 上的 bootstrap-vue 相关的内容) %) 虽然我只看到了一次类似的其他消息(并且不确定究竟是什么导致了差异)。

我做错了什么?为什么在使用链接包作为依赖项时 serve 会冻结?我该如何解决这个问题?

请告诉我您希望我展示的任何其他内容,因为我不确定与该问题确切相关的内容,因此没有包含任何可能感兴趣的细节。

解决方法

好的,问题似乎确实与解析符号链接有关,解决方案是简单地阻止 webpack 解析这些符号链接:https://github.com/vuejs/vue-cli/issues/1494#issuecomment-498144990

configureWebpack: {
    resolve: {
        symlinks: false,},}