我想在我的angularjs指令的html模板中包含一个扩展pageUrl。这是我案例中最简单的例子。
angular.module('pageInclude', [])
.directive('pageInclude', function() {
return {
restrict: 'E',
replace: true,
scope: {
extUrl: '='
},
template: "<div><h1>Page Include</h1><ng-include src=\"'{{extUrl}}'\"></ng-include></div>"
}
});
我的Html代码是:
<page-include ext-url="example/extendForm.html"></page-include>
然后我收到了以下错误:
错误:[$ interpolate:noconcat]插值时出错:&#39; {{extUrl}}&#39; Strict Contextual Escaping禁止连接插值 需要可信值时的多个表达式。看到 http://docs.angularjs.org/api/ng。$ SCE http://errors.angularjs.org/1.3.15/ $插值/ noconcat P0 =&#39;?%7B%7BextUrl%7D%7D&#39; 在REGEX_STRING_REGEXP(angular.js:63) at $ interpolate(angular.js:10152) at addAttrInterpolateDirective(angular.js:8101) 在collectDirectives(angular.js:7203) 在compileNodes(angular.js:7035)
有没有办法让这个案子有效?谢谢你的回复。
答案 0 :(得分:0)
答案 1 :(得分:0)
进行以下更改
scope:{
extUrl:'@'
}
并将模板写为
template: "<div><h1>Page Include</h1><ng-include src=\"{{extUrl}}\"></ng-include></div>"