2017-10-05 131 views
0

要使用的角度我已经在我的主页指令动态templateUrl

template1.html使用将显示为人口信息网

工作显示许多人口信息网,如果我解决的.html来显示。

<a class="vsn_alert-item-link" tooltip-special="template1.html" tooltip-placement="right"> 
可以在.js侧

有我的指令

.directive('tooltipSpecial', ['$uibTooltip', '$rootScope', '$timeout', 
     function($uibTooltip, $rootScope, $timeout) { 
     return $uibTooltip('tooltipSpecial', 'tooltip', 'click'); 
}]);' 

的指令是:

.directive('tooltipSpecialPopup', ['$timeout', function ($timeout) { 
    var templateUrl=""; 
    return { 
    restrict: 'AE', 
    scope: { content: '@', placement: '@', animation: '&', isOpen: '&' }, 

    controller: function($rootScope, $scope){ 
    $scope.$apply(); 
    } , 
     templateUrl: function(elem,attrs) { 
      return attrs.content 
     } 
    }; 

}])

的结果是这样的错误:

angular.js:13550 Error: [$compile:tpload] Failed to load template: {{content}} (HTTP status: 404 Not Found) 
http://errors.angularjs.org/1.5.5/$compile/tpload?p0=%7B%7Bcontent%7D%7D&p1=404&p2=Not%20Found 
    at angular.js:68 
    at handleError (angular.js:18978) 
    at processQueue (angular.js:15961) 
    at angular.js:15977 
    at Scope.$eval (angular.js:17229) 
    at Scope.$digest (angular.js:17045) 
    at Scope.$apply (angular.js:17337) 
    at done (angular.js:11572) 
    at completeRequest (angular.js:11778) 
    at XMLHttpRequest.requestLoaded (angular.js:11711) 

回答

0
app.directive('hymn', function() { 
    return { 
     restrict: 'E', 
     link: function(scope, element, attrs) { 
      // some ode 
     }, 
     templateUrl: function(elem,attrs) { 
      return attrs.templateUrl || 'some/path/default.html' 
     } 
    } 
}); 

所以,你可以通过标记

<hymn template-url="contentUrl"><hymn> 

提供templateUrl现在,你只需要照顾,物业的contentURL动态生成的路径填充。

+0

templateurl所有时间都包含第二个值 –