diff options
Diffstat (limited to 'docs/content/error/$compile/tplrt.ngdoc')
| -rw-r--r-- | docs/content/error/$compile/tplrt.ngdoc | 39 | 
1 files changed, 39 insertions, 0 deletions
| diff --git a/docs/content/error/$compile/tplrt.ngdoc b/docs/content/error/$compile/tplrt.ngdoc new file mode 100644 index 00000000..3c29dbdc --- /dev/null +++ b/docs/content/error/$compile/tplrt.ngdoc @@ -0,0 +1,39 @@ +@ngdoc error +@name $compile:tplrt +@fullName Invalid Template Root +@description + +When a directive is declared with `template` (or `templateUrl`) and `replace` mode on, the template +must have exactly one root element. That is, the text of the template property or the content +referenced by the templateUrl must be contained within a single html element. +For example, `<p>blah <em>blah</em> blah</p>` instead of simply `blah <em>blah</em> blah`. +Otherwise, the replacement operation would result in a single element (the directive) being replaced +with multiple elements or nodes, which is unsupported and not commonly needed in practice. + + +For example a directive with definition: + +``` +myModule.directive('myDirective', function factory() { +  return { +    ... +    replace: true, +    templateUrl: 'someUrl' +    ... +  } +}); +``` + +And a template provided at URL `someUrl`. The template must be an html fragment that has only a +single root element, like the `div` element in this template: + +``` +<div><b>Hello</b> World!</div> +``` + +An an invalid template to be used with this directive is one that defines multiple root nodes or +elements. For example: + +``` +<b>Hello</b> World! +``` | 
