Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.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 引用同一模板的多个角度指令_Javascript_Angularjs_Design Patterns - Fatal编程技术网

Javascript 引用同一模板的多个角度指令

Javascript 引用同一模板的多个角度指令,javascript,angularjs,design-patterns,Javascript,Angularjs,Design Patterns,我发现自己处于这样一种情况:我有两个孤立的作用域指令(每个指令管理不同的作用域和dom状态),它们引用单个模板 .directive1... scope: {}, templateUrl: 'template1', .directive2... scope: {}, templateUrl: 'template1', 我习惯于在我的指令和它们的模板之间建立1对1的关系,这个模型(2个指令对1个模板)让我改变了这种模式 我不应该让多个隔离范围指令引用同一个模板,

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

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

.directive2...
    scope: {},
    templateUrl: 'template1',
我习惯于在我的指令和它们的模板之间建立1对1的关系,这个模型(2个指令对1个模板)让我改变了这种模式

我不应该让多个隔离范围指令引用同一个模板,这有什么好的理由吗

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


这里还有其他的设计考虑吗?

如果directive1和directive2在形式和功能上非常相似,我认为重用同一个模板没有任何问题。尽管如此,如果它们如此相似,这可能意味着它们应该是一个指令,并在作用域上传递参数/选项


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

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

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