diff --git a/src/ng/compile.js b/src/ng/compile.js index 5a8103d7f024..c8b1293e496b 100644 --- a/src/ng/compile.js +++ b/src/ng/compile.js @@ -1441,10 +1441,10 @@ function $CompileProvider($provide, $$sanitizeUriProvider) { require, directiveName); } return value; - } else if (isArray(require)) { - value = []; - forEach(require, function(require) { - value.push(getControllers(directiveName, require, $element, elementControllers)); + } else if (isArray(require) || isObject(require)) { + value = isArray(require) ? [] : {}; + forEach(require, function(require, key) { + value[key] = getControllers(directiveName, require, $element, elementControllers); }); } return value;