Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.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
Javascript Angularjs 1.x中处理复杂UI交互的最佳实践_Javascript_Angularjs_User Interface - Fatal编程技术网

Javascript Angularjs 1.x中处理复杂UI交互的最佳实践

Javascript Angularjs 1.x中处理复杂UI交互的最佳实践,javascript,angularjs,user-interface,Javascript,Angularjs,User Interface,如果这个问题太笼统,我提前表示歉意 场景:表单有一系列复杂的规则来管理各个组件的状态 任意示例: 如果按钮2已启用,且输入字段2的值为“x”,而Select的值为“y”,则按钮1已禁用,且需要输入字段1 现在想象一下,对于一个给定的表单,需要后一个示例的许多实例。对于这个scneario,我们假设表单的行为不能通过根据客户需求更改布局或流来简化 目前,我使用指令(ngDisable、ngRequired等)和控制器范围定义函数(例如ngChange='checkStateOfX()')的组合来管

如果这个问题太笼统,我提前表示歉意

场景:表单有一系列复杂的规则来管理各个组件的状态

任意示例: 如果按钮2已启用,且输入字段2的值为“x”,而Select的值为“y”,则按钮1已禁用,且需要输入字段1

现在想象一下,对于一个给定的表单,需要后一个示例的许多实例。对于这个scneario,我们假设表单的行为不能通过根据客户需求更改布局或流来简化

目前,我使用指令(
ngDisable
ngRequired
等)和控制器范围定义函数(例如
ngChange='checkStateOfX()'
)的组合来管理上述类似的scneario。在我看来,上述方法可能很快变得难以管理

是否有任何最佳实践或angularjs框架/插件可用于处理与我当前使用的方法不同的复杂UI交互场景


非常感谢您的想法。

不要使用控制器函数来指定在UI上操作的内容-使用指令。此外,如果可以,请切换到编写组件()。做这两件事会让你的生活轻松很多。使用
ngDisable
ngIf
始终是有用的(在某些情况下是必需的)。

不要使用控制器函数来指定在UI上操作的内容-使用指令。此外,如果可以,请切换到编写组件()。做这两件事会让你的生活轻松很多。使用
ngDisable
ngIf
总是有用的(在某些情况下是必需的)