2014-02-19 106 views
0

我有一個名爲customStyles一個自定義的指令,它的定義是:動態更新模板的HTML在角度指令

scrollbackApp.directive('customStyles', function(){ 
    return{ 
     restrict: 'E', 
     template: '<style> {{styleString}} </style>', 
     scope: { 
      conversations : '=' 
     }, 
     link: function($scope, elem, attrs){ 
      $scope.$watch('conversations', function(value){ 
       // calculate str based on value 
       $scope.styleString = str; 
      }); 
     } 
    } 
}); 

我加入這個指令到我的HTML視圖的身體:

<body> 
    <custom-styles conversations="convList"> </custom-styles> 
</body> 

並且convList的值在父控制器範圍內發生變化。目前,當上述指令呈現給Html時,{{styleString}}綁定仍然是一個字符串,而不是變成它的值。我希望指令的html根據styleString的值動態更改。這在Angular中可能嗎?

+0

你能做到styleString的例子嗎? btw函數(值)應該是函數(str) – Whisher

回答

1

你應該考慮重命名指令標籤:

<custom-styles conversations="convList"> </custom-styles> 

這裏是工作示例:

http://plnkr.co/edit/aOxf3fgS7Tc0sOyCXoBV?p=preview

+0

我把'str'改爲'value',因爲我不知道你的str計算邏輯。並且我還將標記'