使用AngularJS进行HTML5 Componenet继承

时间:2016-03-06 13:16:51

标签: javascript angularjs html5 inheritance directive

我正在使用AngularJS编写移动网络应用程序,并在不同视图中使用类似的组件(请参阅此处的图像:Similar Component in different views

我为其中一个组件创建了一个指令。现在我想重写大部分代码,因为它们基本相同(所以我不必两次维护相同的代码)。通过服务等共享功能并不是真正的问题,而是不同的“HTML内容”。

重用现有指令的最佳方法是什么?在调用它或类似的东西时,我可以将指令“注入”主指令吗?

以下是我正在寻找的代码示例:

app.directive('directiveOne', function() {
return {
    template: '<table><tr>
                   <td class="image"><img ...></img></td>
                   <td class="generic-input"></td>
                   <td class="dynamic-input">
                        <p>I am something</p>
                   </td>
               </tr></table>'
};


app.directive('directiveTwo', function() {
return {
    template: '<table><tr>
                   <td class="image"><i class="icon-one"></i></td>
                   <td class="generic-input"></td>
                   <td class="dynamic-input">
                        <p>I am something</p>
                        <p>I am something else</p>
                        <form>And I also have a form</form>
                   </td>
               </tr></table>'
};

我有两个非常相似的模板作为指令。,即在上面附图中,我会调用一个版本的master-directive来显示左图像,另一个版本用于右图,而不是写两个近似相同的指令?

0 个答案:

没有答案