Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 如何在Monorepo中的VueJS项目之间共享组件_Typescript_Webpack_Vue.js - Fatal编程技术网

Typescript 如何在Monorepo中的VueJS项目之间共享组件

Typescript 如何在Monorepo中的VueJS项目之间共享组件,typescript,webpack,vue.js,Typescript,Webpack,Vue.js,在一个存储库中,我有两个VueJS单页应用程序,它们应该共享一些组件、一个插件和其他通用代码。如果对通用代码进行了更改,则这些更改应立即在两个应用程序中可见 我的问题: 我怎样才能解决这个问题?有没有一种规范的方法可以做到这一点 问题 我的简化方法是将代码复制到公共目录中,并使用。/../common/My_组件导入它。但这打破了相对导入和输入 将共享内容转换为npm模块打破了更改时的自动更新,不是吗 更多上下文: 我正在用TypeScript编写应用程序。 npm链接没有选项,因为它必须运行

在一个存储库中,我有两个VueJS单页应用程序,它们应该共享一些组件、一个插件和其他通用代码。如果对通用代码进行了更改,则这些更改应立即在两个应用程序中可见

我的问题: 我怎样才能解决这个问题?有没有一种规范的方法可以做到这一点

问题

我的简化方法是将代码复制到公共目录中,并使用
。/../common/My_组件导入它。但这打破了相对导入和输入

将共享内容转换为npm模块打破了更改时的自动更新,不是吗

更多上下文:

我正在用TypeScript编写应用程序。 npm链接没有选项,因为它必须运行

目前,结构如下所示:

/ Main_Project
|-App1
| |- src
| |- ...
|-App2
| |- src
| |- ...
|-Common
| |- components
| |- plugins
| |- shared_code

您的
tsconfig.json
文件位于哪里?它是针对
主项目的单个应用程序还是针对每个应用程序的单独应用程序?对于每个应用程序都是单独的。但它们是一样的。需要更多信息。为什么要打破相对进口?我们有一个带有TypeScript的mono-repo设置,它可以正常工作。你能添加更多的代码片段吗?@wedi你做到了吗?比如不依赖npm回购,而是依赖你自己的monorepo?我最终不需要解决方案,因为这两个应用已经合并为一个。不过,如果你能找到一个解决方案,我很高兴你能发布它是如何为你工作的。也许@HarshalPatil可以帮助您处理您的用例?