您认为表达式{{myProperty}}的价值应该是什么?不应该是未定义的吗?
<div ng-init="myProperty = 'WOW, this is cool'"></div>
<div my-directive>
Inside myDirective, isolate scope: {{ myProperty }}
<div>
<script>
angular.module('app', [])
.directive('myDirective', function() {
return {
restrict: 'A',
scope: {}
};
});
</script>
这里http://jsbin.com/diquzuba/1/edit这是一个简单的例子。
谢谢。
答案 0 :(得分:1)
在您的示例中,{{ myProperty }}
在主模板范围内进行评估,因为您的指令未定义自己的模板。
如果您使用设置创建模板,它仍会显示WOW, this is cool
,因为转换会将正确的父范围应用于已转换的内容。
另一方面,如果您在指令中定义新模板而未指定转换,并尝试在此模板中使用{{ myProperty }}
,那么它将为undefined
。
答案 1 :(得分:1)
<div my-directive>
Inside myDirective, isolate scope: {{ myProperty }}
<div>
指令中的不。
restrict: 'A',
scope: {}
这个是。指令本质上是代码,有时用模板丰富。不要将指令与DOM元素混淆。想象一下:
<div my-directive another-directive yet-another-one>
{{ myProperty }}
<div>
如果这些指令中的每一个都有一个隔离范围,那么指令将{{ myProperty }}
内,如果它真的在指令中?