javascript - Web 应用程序中避免代码重复的策略

标签 javascript c# angularjs visual-studio code-duplication

我正在尝试为代码重复的大问题找到最佳解决方案。我们有一个 ASP.NET Web Api 后端和一个 Angular 前端。我们的后端解决方案还有多个项目,其中包含用于访问数据库的业务逻辑DAO

现在,问题是我们有多个客户,每个客户都有不同的 UI,有时使用不同的 Javascript 代码,但后端保持不变。因此,目前,我们在 Visual Studio 中为每个客户创建一个新项目,其中几乎所有客户端代码都被复制 + UI 更改以及后端的所有 Controllers也被复制,以及 Global.asax、OWIN auth 等文件。

这正在成为噩梦,有很多重复的代码,维护起来很痛苦。我想到了一些选择:

  • 为每个客户提供不同的.js.css.html文件,但仅限于我们更改的文件,然后,部署的时候,告诉Visual Studio根据配置部署哪个文件(不知道这个可不可以)
  • 找到一些工具,使我们能够有条件地更改 javascript 中的代码,就像 Visual Studio 对不同的部署配置使用 Web.config 一样
  • 为代码寻找另一种方法/架构?

最佳答案

您可以在多个解决方案中引用一个项目。

我会构建一系列通用项目,然后构建引入并“完成”Web 应用程序的单个客户项目。

将最终客户项目作为模板以确保不会遗漏任何内容可能是谨慎的做法。

关于javascript - Web 应用程序中避免代码重复的策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36653216/

相关文章:

javascript - 警告 : A path must be pathname + search + hash only, 不是完整的 UR - React js

javascript - 查找 JavaScript 对象数组中的属性是否有效

javascript - 使用带有 JS 输入的 Header 下载文件

c# - 每个接口(interface)都显式实现? (涉及国际奥委会)

javascript - 在 angularjs 中,我们有 ng-disabled 指令,为什么框架没有提供 ng-enabled 指令,因为我们有 ng-show 和 ng-hide

javascript - 过滤对象内的数组 javascript

c# - 从 visual studio 中完全删除 "error list"

c# - Sharepoint aspx 页面的代码隐藏在哪里?

angularjs - Angular $location.path 没有按预期工作

javascript - 带有指令和翻译的 Angular SweetAlert