2014-01-23 45 views
0

我正在嘗試使用動態模板創建AngularJS指令(我的第一個指令)。這個想法很簡單,它將是一個日曆,用戶可以像outlook一樣切換視圖(或者在這裏插入你喜歡的日曆)。無法在用戶操作時動態更改angularjs指令模板

我一直在嘗試編譯,模板,控制器,鏈接,我可以找到的所有方式。我顯然缺少一些東西。

我正在使用一個屬性來存儲所需的時間段(以便它可以默認設置爲標記)。一個函數從指令外部的一個按鈕被調用,該指令更新屬性。該屬性更新如預期,但我無法弄清楚如何讓模板重新呈現。

plnkr provided。

http://plnkr.co/edit/oTE80hMc6DAP7fTmduvo?p=info

任何幫助將不勝感激。

感謝, 埃裏克

回答

0

這是我怎麼會做這樣的事情,你在找什麼:

Plunker demo

angular.module("ngCalendar", []) 
    .directive("ngCalendar", function factory() { 
     return { 
      restrict: "AE", 
      replace: true, 
      link: function ($scope, element, $attrs) { 

    element.html("<div>Please set period attribute.</div>"); 
    $scope.$watch('canlendarType',function(newValue, oldValue,scope){ 
     var t = 'sadf'; 
       switch (newValue) { 
        case 'month': 
         t ="<div>month</div>"; 
         break; 
        case 'week': 
         t = "<div>week</div>"; 
         break; 
        case 'day': 
         t = "<div>day</div>"; 
         break; 

     } 
     element.html(t); 
     }); 
    } 
      } 
    });