用于构建可重用控件的模式可以根据其运行的环境工作吗?

时间:2017-08-02 06:10:54

标签: javascript jquery asp.net design-patterns

请参阅图片。

三个大的黑色矩形是我的三种不同形式。它们在我的应用程序中属于3种不同的上下文。 所有3个表格上都有红色方框。 但是,红色框的可见性(和允许值,验证规则等)取决于其他一些控件'可见性和/或用户在其表格上输入的值。例如。在第一种形式中,可见性将根据绿色控制而变化。能见度。在另一种形式上,红色框中的允许值将取决于在蓝色列表控件中选择的值,依此类推。

我应该如何处理红色控件的值/状态/验证?

一种选择是在每种形式中嵌入逻辑。但这会导致代码重复。

状态模式是一种选择吗?如果是,则红色控件的服务器端逻辑必须处理所有上下文?那个逻辑怎么会知道绿色或蓝色控件中的值何时发生变化?

我希望有一个可重复使用的红色文本框,在所使用的每个环境中都会以所需的方式运行。

在这种情况下我应该使用哪种模式?如果我在表格上更改每个控件(格力,蓝色等)时调用服务器端逻辑来计算红色框的可见性/值,那么考虑性能是一个很好的选择吗?

我有一个ASP.NET应用程序。

(红色控制是说明性的。这可能是更复杂的控制或一组控制。)enter image description here

1 个答案:

答案 0 :(得分:1)

最佳解决方案是使用支持此设计的现有框架之一。 例如

  • Angular 2/4
  • Backbone
  • Vue

还有很多其他的,但有了这个,我有经验,对我来说是完美的。