我可以在http://jsfiddle.net/miketheanimal/2CcYp/13/看到我遇到的问题.这将我的问题降到最低限度.
我有一个控制器"main",一个指令"外部"转换's,一个指令"内部"没有.每个指令都有一个隔离范围和一个控制器.主要和指令控制器设置$ scope._name ='...'所以我可以区分它们.
var module = angular.module('miketa', []);
function main ($scope) {
$scope._name = 'main' ;
} ;
module.directive('outer', function() {
return {
restrict: 'E',
replace: true,
transclude: true,
scope: {},
template: '<div><div ng-transclude></div></div>',
controller: [ '$scope', function($scope) {
$scope._name = 'outer' ;
document.getElementById('opn').innerHTML = $scope.$parent._name ;
}]}});
module.directive('inner', function() {
return {
restrict: 'E',
replace: true,
scope: {},
template: '<div></div>',
controller: [ '$scope', function($scope) {
$scope._name = 'inner' ;
document.getElementById('ipn').innerHTML = $scope.$parent._name ;
}]}});
Run Code Online (Sandbox Code Playgroud)
HTML将它们作为main - …