2014-08-27 49 views
0

我想在现有的代码中添加角度JS模块。我实际上正在尝试在其中添加一段新的代码。工作流程就像这样。当一个按钮被点击时,JS采用一个模板并将其添加到dom中。在这个添加的模板中,我想插入新的角JS模块。我正在尝试在模块内部显示hello world,但没有成功。如何在现有的应用程序内添加角度js模块

比方说,一个按钮被按下时,我加入下面的标签这是通过的jQuery或JavaScript添加的DOM

<div patient-details ng-controller='patientDetailsCtrl' id='patientDetails'></div> 

。我如何使它与下面的指令

angular.module('patientDetailsModule',[]) 
.directive('patientDetails',function($compile){ 
    return{ 
     //restrict: 'E', 
     template: "<div>Hello World!!!{{name}}</div>" 
    }; 
}); 
+0

我不明白:(。莫非你解释一下? – gustavodidomenico 2014-08-27 20:11:37

回答

1

您需要使用$ compile。 $ compile()将确保您的html代码片段中的所有Angular代码将被编译为

这里是一个例子。

http://plnkr.co/edit/7Wr3oAtvZ8cn31uFFEOs?p=preview

  • 从发送消息NC-点击指令
  • 指令接收消息,编译HTML并追加新要素

      var template = "<div patient-details ng-controller='patientDetailsCtrl' id='patientDetails'>Element added</div>"; 
          var newElement = angular.element(template); 
          $compile(newElement)(scope); 
          element.append(newElement); 
          // can also use element.replaceWith(newElement); 
    
相关问题