javascript - 引用同一模板的多个 Angular Directive(指令)

标签 javascript angularjs design-patterns

我发现自己处于这样的情况:我有 2 个独立作用域指令(每个指令管理不同的作用域和 dom 状态),它们引用单个模板。

.directive1...
    scope: {},
    templateUrl: 'template1',

.directive2...
    scope: {},
    templateUrl: 'template1',

我习惯于指令与其模板之间存在一对一的关系,而这种模型(2 个指令 - 到 - 1 个模板)让我偏离了这种模式。

我不应该有多个隔离作用域指令引用同一模板,有充分的理由吗?

这是否违反了一些“最佳实践”设计模式思想?

这里我还应该考虑其他设计注意事项吗?

最佳答案

如果指令 1 和指令 2 在形式和功能上非常相似,那么我认为重用相同的模板不会有任何问题。不过,如果它们如此相似,则可能意味着它们应该是一个在作用域上传递参数/选项的指令?

我想补充一点,在 2 对 1 情况下涉及的所有指令/模板的命名中需要非常清楚,它们是相似的,例如:“apple”指令和“orange”指令都使用'fruit' 模板,类似于类继承模式。

关于javascript - 引用同一模板的多个 Angular Directive(指令),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30950014/

相关文章:

javascript - $(document).ready 中必须声明或输入什么?

javascript - 根据主要复选框选择影响辅助单选按钮

angularjs - Angular JS - UI 路由器 : Reload state on click

javascript - 如何使用mean.js上传图像并将其保存到数据库(mongoose)

design-patterns - 策略和享元模式

java - 如何在 Java 中为表 JOINS 实现 DAO/DTO?

java - 改造界面的设计模式

javascript - 使用editorJs时如何计算字符数

javascript - 使用字符串数组键转换对象

orderBy后Angularjs错误$index