我正在学习角度,并且理解了指令中的范围,我开始变得更加……大胆,容我说吧。我想渲染一个嵌套在另一个表的单元格中的表,其中两个表都是由两个具有不同范围的独立指令生成的。这是小提琴: http:
//jsfiddle.net/jared_t83/Y8LjY/
这是有问题的链接方法:
link: function($scope, element, attrs) {
$scope.property = "scopingTest2.link() - won't overwrite parent"
var html = element.html(),
text = [
'scopingtest2 - new scope, prototipically inherited from the parent',
'<table>',
'<tr><th>key</th><th>value</th></tr>',
'<tr>',
'<td>Nested table should be here: <br><div scoping-test1></div></td>',
'</tr>',
'<tr>',
'<td>$scope.property</td>',
'<td>', $scope.property, '</td>',
'</tr><tr>',
'<td> $scope.$parent.property </td>',
'<td>', $scope.$parent.property, '</td>',
'</tr><tr>',
'<td> $scope.__proto__.property</td>',
'<td>', $scope.__proto__.property, '</td>',
'</tr></table><br>'
]
element.html(html + text.join(''));
}
应该呈现嵌套表的行是:
'<tr>',
'<td>Nested table should be here: <br><div scoping-test1></div></td>',
'</tr>',
但是我看到的是一个渲染表,上面的文字。
我究竟做错了什么?如何实现我想要的?感谢您的宝贵时间,
问候
Jared