2017-10-10 193 views
0

我嘗試建立這個指令在angularJS,我面對這個問題 我嘗試綁定到HTML,對象屬性,它的名字來自另一個變量就像下面的例子

angular.module('ng.box', codeHive.angular.modules) 
.directive('boxView', function($compile) { 
return { 
    link: function(scope, element, attrs, ngModelCtrl) { 
     var name = 'exampl'; 
     var htmlTemplate = '<div instance="'+scope[name].innerVal +'" </div> '; 

     var el = angular.element('<div/>'); 
     el.append(htmlTemplate); 
     $compile(el)(scope); 
     element.append(el); 
    }, 
    }; 
}) 

我揣摩如何將這個對象屬性的實例屬性中的HTML元素綁定

var htmlTemplate = '<div instance="'+scope[name].innerVal +'" </div> '; 

任何幫助,請

回答

0

很簡單:

var htmlTemplate = '<div instance="' + name + '.innerVal" </div> '; 

PS。順便說一句,這些行應該被交換:

element.append(el); // this should be first line 
    $compile(el)(scope); // this should be second line 

的原因是,在模板指令被追加需要的父元素其他指令將無法找到他們時,編制了「下線」。