diff options
| author | Misko Hevery | 2011-11-14 15:58:40 -0800 | 
|---|---|---|
| committer | Misko Hevery | 2011-11-14 20:31:21 -0800 | 
| commit | 8adae2fdf272f3fa428cc9fe43c860c02b2d85fd (patch) | |
| tree | bbfa04ebaa99fcb4f7dddd4a320b8dfe55e6c298 /src/service/compiler.js | |
| parent | 955551141de88f15760e3e6e8cb8503ee34b6f6e (diff) | |
| download | angular.js-8adae2fdf272f3fa428cc9fe43c860c02b2d85fd.tar.bz2 | |
refactor(injector): removed loadModule/ng:module
- added module property to doc:example
Diffstat (limited to 'src/service/compiler.js')
| -rw-r--r-- | src/service/compiler.js | 12 | 
1 files changed, 9 insertions, 3 deletions
diff --git a/src/service/compiler.js b/src/service/compiler.js index 3464a1a0..8a0dca7d 100644 --- a/src/service/compiler.js +++ b/src/service/compiler.js @@ -244,6 +244,7 @@ function $CompileProvider(){                elementName = nodeName_(element),                elementNamespace = elementName.indexOf(':') > 0 ? lowercase(elementName).replace(':', '-') : '',                template, +              locals = {$element: element},                selfApi = {                  compile: bind(self, self.compile),                  descend: function(value){ if(isDefined(value)) descend = value; return descend;}, @@ -256,7 +257,10 @@ function $CompileProvider(){              if (!widget) {                if ((widget = self.widgets('@' + name))) {                  element.addClass('ng-attr-widget'); -                widget = bind(selfApi, widget, value, element); +                if (isFunction(widget) && !widget.$inject) { +                  widget.$inject = ['$value', '$element']; +                } +                locals.$value = value;                }              }            }); @@ -264,14 +268,16 @@ function $CompileProvider(){              if ((widget = self.widgets(elementName))) {                if (elementNamespace)                  element.addClass('ng-widget'); -              widget = bind(selfApi, widget, element); +              if (isFunction(widget) && !widget.$inject) { +                widget.$inject = ['$element']; +              }              }            }            if (widget) {              descend = false;              directives = false;              var parent = element.parent(); -            template.addLinkFn(widget.call(selfApi, element)); +            template.addLinkFn($injector.invoke(selfApi, widget, locals));              if (parent && parent[0]) {                element = jqLite(parent[0].childNodes[elementIndex]);              }  | 
