我们在Visual Studio中有以下项目结构。我们有一个SharedComponents项目的原因是因为我们的客户端和管理界面之间共享了许多组件。我们使用特征模式,并希望拥有此项目结构。
/src(.sln)
--/PublicClient
--/Admin
--/SharedComponents我们的SharedComponents项目不是Visual Studio Shared Project而是Class Library,因为我们使用TypeLite NuGet从TypeScript类生成.NET接口。
由于SharedComponents项目有自己的package.json、tsconfig.json和tslint.json,我们面临着很多问题。
模块注解是这里描述的问题之一:
我们不想放松的一个功能是,如果我们在任何一个项目中进行任何更改,都可以使用webpack-dev-server进行热重载,包括SharedComponents。
我读了很多关于这个问题的帖子,但没有找到任何好的解决方案。
由于移动node_modules中的依赖项,npm link会导致构建错误。
https://github.com/npm/npm/issues/10343
https://github.com/facebookincubator/create-react-app/issues/1492
我们不想跳过共享项目并将文件复制到两个项目中。在两个不同的项目中维护相同的组件将非常耗时。
如果我们将共享项目的源代码开放给NPM,或者使用其他服务,如NPM private modules、linklocal、Bit或sinopia,我们将失去热重新加载和/或不得不单独维护包。
有没有其他人遇到过同样的情况,并找到了一个好的解决方案?
发布于 2018-01-15 23:07:23
我们决定将所有前端代码放在一个项目中,然后在那里使用单独的文件夹。这意味着我们只有一个package.json、node_modules、tsconfig.json和tslint.json。我们不能将API:s放在同一个项目中,但是因为我们可以在webpack-dev-server中使用热重载,所以最终这仍然是一个很好的权衡。
然后,对于不同的配置,我们使用了两个单独的webpack.config.js文件,分别称为webpack.publicclient.config.js和webpack.admin.config.js。
https://stackoverflow.com/questions/48264414
复制相似问题