diff --git a/src/ng/compile.js b/src/ng/compile.js index 32c1d1cacd4c..b7eb759b3de2 100644 --- a/src/ng/compile.js +++ b/src/ng/compile.js @@ -1037,7 +1037,7 @@ function $CompileProvider($provide) { interpolateFn = $interpolate(attr[name], true); } - attr[name] = undefined; + attr[name] = interpolateFn(scope); ($$observers[name] || ($$observers[name] = [])).$$inter = true; (attr.$$observers && attr.$$observers[name].$$scope || scope). $watch(interpolateFn, function interpolateFnWatchAction(value) { diff --git a/test/ng/compileSpec.js b/test/ng/compileSpec.js index 3b69f60925b9..da8f2f8c1cd9 100644 --- a/test/ng/compileSpec.js +++ b/test/ng/compileSpec.js @@ -1381,9 +1381,10 @@ describe('$compile', function() { })); - it('should set interpolated attrs to undefined', inject(function($rootScope, $compile) { + it('should set interpolated attrs to initial interpolation value', inject(function($rootScope, $compile) { + $rootScope.whatever = 'test value'; $compile('
')($rootScope); - expect(directiveAttrs.someAttr).toBeUndefined(); + expect(directiveAttrs.someAttr).toBe($rootScope.whatever); }));