angularjs 中directive的scope問題
angularjs 中directive的scope問題?
幕布斯6054654
2019-02-05 10:06:50
TA貢獻1804條經驗 獲得超3個贊
templateURL function 只有2個參數 elem
和 attr
哦。不能訪問scope
,因為模版請求是在scope
初始化之前。
可以通過屬性傳輸,然后獲取return 'customer-'+attr.type+'.html'
,或者
... link: function(scope) { scope.customerUrl = 'customer-'+scope.type+'.html'}, template: '<div ng-include="customerUrl"></div>'...
TA貢獻1786條經驗 獲得超13個贊
templateUrl執行還在compile之前,從哪里去注入的scope?
templateUrl的參數只有element,attrs。
如果你的type是靜態的,可以這樣用
<my-dir type="template.html"></my-dir>
.directive('myDir', function () { return { scope: { type: '@' }, templateUrl: function (element, attrs) { return attrs.type; } } });
舉報