| <!doctype html> |
| <!-- |
| This file is autogenerated with polymer/tool/create_message_details_page.dart |
| --> |
| <html> |
| <style> |
| @font-face { |
| font-family: 'Montserrat'; |
| font-style: normal; |
| font-weight: 400; |
| src: url(https://themes.googleusercontent.com/static/fonts/montserrat/v4/zhcz-_WihjSQC0oHJ9TCYL3hpw3pgy2gAi-Ip7WPMi0.woff) format('woff'); |
| } |
| @font-face { |
| font-family: 'Montserrat'; |
| font-style: normal; |
| font-weight: 700; |
| src: url(https://themes.googleusercontent.com/static/fonts/montserrat/v4/IQHow_FEYlDC4Gzy_m8fcnbFhgvWbfSbdVg11QabG8w.woff) format('woff'); |
| } |
| @font-face { |
| font-family: 'Roboto'; |
| font-style: normal; |
| font-weight: 300; |
| src: url(https://themes.googleusercontent.com/static/fonts/roboto/v10/Hgo13k-tfSpn0qi1SFdUfbO3LdcAZYWl9Si6vvxL-qU.woff) format('woff'); |
| } |
| @font-face { |
| font-family: 'Roboto'; |
| font-style: normal; |
| font-weight: 400; |
| src: url(https://themes.googleusercontent.com/static/fonts/roboto/v10/CrYjSnGjrRCn0pd9VQsnFOvvDin1pK8aKteLpeZ5c0A.woff) format('woff'); |
| } |
| |
| body { |
| width: 80vw; |
| margin: 20px; |
| font-family: Roboto, sans-serif; |
| } |
| |
| h2 { |
| font-family: Montserrat, sans-serif; |
| box-sizing: border-box; |
| color: rgb(72, 72, 72); |
| display: block; |
| font-style: normal; |
| font-variant: normal; |
| font-weight: normal; |
| } |
| |
| h3 { |
| font-family: Montserrat, sans-serif; |
| box-sizing: border-box; |
| color: rgb(72, 72, 72); |
| display: block; |
| font-style: normal; |
| font-variant: normal; |
| font-weight: normal; |
| } |
| |
| pre { |
| display: block; |
| padding: 9.5px; |
| margin: 0 0 10px; |
| color: #333; |
| word-break: break-all; |
| word-wrap: break-word; |
| background-color: #f5f5f5; |
| border: 1px solid #ccc; |
| border-radius: 4px; |
| } |
| |
| code { |
| font-family: Menlo,Monaco,Consolas,"Courier New",monospace; |
| box-sizing: border-box; |
| padding: 0; |
| font-size: 90%; |
| color: #0084c5; |
| white-space: nowrap; |
| border-radius: 4px; |
| background-color: #f9f2f4; |
| } |
| |
| pre code { |
| white-space: inherit; |
| color: inherit; |
| background-color: inherit; |
| } |
| |
| a { |
| color: rgb(42, 100, 150); |
| } |
| |
| h3 > a { |
| display: none; |
| font-size: 0.8em; |
| } |
| |
| h3:hover > a { |
| display: inline; |
| } |
| </style> |
| <body> |
| <h2>Messages from package <code>code_transformers</code></h2> |
| <hr /> |
| |
| <h3 id="code_transformers_1">Absolute paths not allowed <a href="#code_transformers_1">#1</a></h3> |
| <p>The transformers processing your code were trying to resolve a URL and identify |
| a file that they correspond to. Currently only relative paths can be resolved.</p> |
| <hr /> |
| |
| <h3 id="code_transformers_2">Invalid URL to reach another package <a href="#code_transformers_2">#2</a></h3> |
| <p>To reach an asset that belongs to another package, use <code>package:</code> URLs in |
| Dart code, but in any other language (like HTML or CSS) use relative URLs.</p> |
| <p>These are the rules you must follow to write URLs that refer to files in other |
| packages:</p><ul><li> |
| <p>If the file containing the relative URL is an entrypoint under <code>web</code>, use |
| <code>packages/package_name/path_to_file</code></p></li><li> |
| <p>If the file containing the URL is under <code>web</code>, but in a different directory |
| than your entrypoint, walk out to the same level as the entrypoint first, |
| then enter the <code>packages</code> directory.</p> |
| <p><strong>Note</strong>: If two entrypoints include the file under <code>web</code> containing the |
| URL, either both entrypoints have to live in the same directory, or you need |
| to move the file to the <code>lib</code> directory.</p></li><li> |
| <p>If the file containing the URL lives under <code>lib</code>, walk up as many levels as |
| directories you have + 1. This is because code in <code>lib/a/b</code> is loaded from |
| <code>packages/package_name/a/b</code>.</p></li></ul> |
| <p>The rules are easier to follow if you know how the code is laid out for |
| Dartium before you build, and how it is laid out after you build it with <code>pub |
| build</code>. Consider the following example:</p> |
| <p> package a</p> |
| <pre><code> lib/ |
| |- a1.html |
| |
| web/ |
| |- a2.html |
| </code></pre> |
| <p> package b</p> |
| <pre><code> lib/ |
| |- b1.html |
| |- b2/ |
| |- b3.html |
| </code></pre> |
| <p> package c</p> |
| <pre><code> lib/ |
| |- c3.html |
| |
| web/ |
| |- index.html |
| |- index.dart |
| |- c1/ |
| |- c2.html |
| </code></pre> |
| <p>If your app is package <code>c</code>, then <code>pub get</code> generates a packages directory under |
| the web directory, like this:</p> |
| <pre><code> web/ |
| |- index.html |
| |- index.dart |
| |- c1/ |
| | |- c2.html |
| |- packages/ |
| |- a/ |
| | |- a1.html |
| |- b/ |
| | |- b1.html |
| | |- b2/ |
| | |- b3.html |
| |- c/ |
| |- c3.html |
| </code></pre> |
| <p>Note that no <code>lib</code> directory is under the <code>packages</code> directory. |
| When you launch <code>web/index.html</code> in Dartium, Dartium loads <code>package:</code> imports from |
| <code>web/packages/</code>.</p> |
| <p>If you need to refer to any file in other packages from <code>index.html</code>, you can |
| simply do <code>packages/package_name/path_to_file</code>. For example |
| <code>packages/b/b2/b3.html</code>. From <code>index.html</code> you can also refer to files under the |
| web directory of the same package using a simple relative URL, like |
| <code>c1/c2.html</code>.</p> |
| <p>However, if you want to load <code>a1.html</code> from <code>c2.html</code>, you need to reach out to |
| the packages directory that lives next to your entrypoint and then load the file |
| from there, for example <code>../packages/a/a1.html</code>. Because pub generates symlinks |
| to the packages directory also under c1, you may be tempted to write |
| <code>packages/a/a1.html</code>, but that is incorrect - it would yield a canonicalization |
| error (see more below).</p> |
| <p>If you want to load a file from the lib directory of your own package, you |
| should also use a package URL. For example, <code>packages/c/c3.html</code> and not |
| <code>../lib/c3.html</code>. This will allow you to write code in <code>lib</code> in a way that it |
| can be used within and outside your package without making any changes to it.</p> |
| <p>Because any time you reach inside a <code>lib/</code> directory you do so using a |
| <code>packages/</code> URL, the rules for reaching into other files in other packages are |
| always consistent: go up to exit the <code>packages</code> directory and go back inside to |
| the file you are looking for. For example, to reach <code>a1.html</code> from <code>b3.html</code> |
| you need to write <code>../../../packages/a/a1.html</code>.</p> |
| <p>The motivation behind all these rules is that URLs need to work under many |
| scenarios at once:</p><ul><li> |
| <p>They need to work in Dartium without any code transformation: resolving the |
| path in the context of a simple HTTP server, or using <code>file:///</code> URLs, |
| should yield a valid path to assets. The <code>packages</code> directory is safe to use |
| because pub already creates it next to entrypoints of your application.</p></li><li> |
| <p>They need to be canonical. To take advantage of caching, multiple URLs |
| reaching the same asset should resolve to the same absolute URL.</p> |
| <p>Also, in projects that use HTML imports (like polymer) tools support that |
| you reach a library with either Dart imports or HTML imports, and correctly |
| resolve them to be the same library. The rules are designed to allow tools |
| to support this.</p> |
| <p>For example, consider you have an import might like:</p> |
| <pre><code><link rel=import href=packages/a/a.html> |
| </code></pre> |
| <p>where a.html has <code><script type="application/dart" src="a.dart"></code>. If your |
| Dart entrypoint also loads <code>"package:a/a.dart"</code>, then a tool need to make |
| sure that both versions of <code>a.dart</code> are loaded from the same URL. Otherwise, |
| you may see errors at runtime like: <code>A is not a subtype of A</code>, which can be |
| extremely confusing.</p> |
| <p>When you follow the rules above, our tools can detect the pattern in the |
| HTML-import URL containing <code>packages/</code> and canonicalize the import |
| by converting <code>packages/a/a.dart</code> into <code>package:a/a.dart</code> under the hood.</p></li><li> |
| <p>They need to continue to be valid after applications are built. |
| Technically this could be done automatically with pub transformers, but to |
| make sure that code works also in Dartium with a simple HTTP Server, |
| existing transformers do not fix URLs, they just detect inconsistencies and |
| produce an error message like this one, instead.</p></li></ul> |
| <hr /> |
| |
| <h3 id="code_transformers_3">Incomplete URL to asset in another package <a href="#code_transformers_3">#3</a></h3> |
| <p>URLs that refer to assets in other packages need to explicitly mention the |
| <code>packages/</code> directory. In the future this requirement might be removed, but for |
| now you must use a canonical URL form for it.</p> |
| <p>For example, if <code>packages/a/a.html</code> needs to import <code>packages/b/b.html</code>, |
| you might expect a.html to import <code>../b/b.html</code>. Instead, it must import |
| <code>../../packages/b/b.html</code>. |
| See <a href="http://dartbug.com/15797">issue 15797</a>.</p> |
| <hr /><h2>Messages from package <code>observe</code></h2> |
| <hr /> |
| |
| <h3 id="observe_1"><code>@observable</code> not supported on libraries <a href="#observe_1">#1</a></h3> |
| <p>Only instance fields on <code>Observable</code> classes can be observable, |
| and you must explicitly annotate each observable field as <code>@observable</code>.</p> |
| <p>Support for using the <code>@observable</code> annotation in libraries, classes, and |
| elsewhere is deprecated.</p> |
| <hr /> |
| |
| <h3 id="observe_2"><code>@observable</code> not supported on top-level fields <a href="#observe_2">#2</a></h3> |
| <p>Only instance fields on <code>Observable</code> classes can be observable, |
| and you must explicitly annotate each observable field as <code>@observable</code>.</p> |
| <p>Support for using the <code>@observable</code> annotation in libraries, classes, and |
| elsewhere is deprecated.</p> |
| <hr /> |
| |
| <h3 id="observe_3"><code>@observable</code> not supported on classes <a href="#observe_3">#3</a></h3> |
| <p>Only instance fields on <code>Observable</code> classes can be observable, |
| and you must explicitly annotate each observable field as <code>@observable</code>.</p> |
| <p>Support for using the <code>@observable</code> annotation in libraries, classes, and |
| elsewhere is deprecated.</p> |
| <hr /> |
| |
| <h3 id="observe_4"><code>@observable</code> not supported on static fields <a href="#observe_4">#4</a></h3> |
| <p>Only instance fields on <code>Observable</code> classes can be observable, |
| and you must explicitly annotate each observable field as <code>@observable</code>.</p> |
| <p>Support for using the <code>@observable</code> annotation in libraries, classes, and |
| elsewhere is deprecated.</p> |
| <hr /> |
| |
| <h3 id="observe_5"><code>@observable</code> field not in an <code>Observable</code> class <a href="#observe_5">#5</a></h3> |
| <p>Only instance fields on <code>Observable</code> classes can be observable, |
| and you must explicitly annotate each observable field as <code>@observable</code>.</p> |
| <p>Support for using the <code>@observable</code> annotation in libraries, classes, and |
| elsewhere is deprecated.</p> |
| <hr /><h2>Messages from package <code>polymer</code></h2> |
| <hr /> |
| |
| <h3 id="polymer_1">Import not found <a href="#polymer_1">#1</a></h3> |
| <p>An HTML import seems to be broken. This could be because the file doesn't exist |
| or because the link URL is incorrect.</p> |
| <hr /> |
| |
| <h3 id="polymer_2">Duplicate definition <a href="#polymer_2">#2</a></h3> |
| <p>Custom element names are global and can only be defined once. Some common |
| reasons why you might get two definitions:</p><ul><li>Two different elements are declared with the same name.</li><li> |
| <p>A single HTML file defining an element, has been imported using two different |
| URLs.</p></li></ul> |
| <hr /> |
| |
| <h3 id="polymer_3">Missing import to polymer.html <a href="#polymer_3">#3</a></h3> |
| <p>Starting with polymer 0.11.0, each file that uses the definition |
| of polymer-element must import it either directly or transitively.</p> |
| <hr /> |
| |
| <h3 id="polymer_4">Invalid import inside <polymer-element> <a href="#polymer_4">#4</a></h3> |
| <p>HTML imports are expected at the top of each document, outside of any |
| polymer-element definitions. The polymer build process combines all your HTML |
| files together so you can deploy a single HTML file with your application. This |
| build process ignores imports that appear to be in the wrong location.</p> |
| <hr /> |
| |
| <h3 id="polymer_5">Missing call to <code>initPolymer()</code> <a href="#polymer_5">#5</a></h3> |
| <p>Your application entry point didn't have any Dart script tags, so it's missing |
| some initialization needed for polymer.dart.</p> |
| <hr /> |
| |
| <h3 id="polymer_6">Script tags with experimental bootstrap <a href="#polymer_6">#6</a></h3> |
| <p>This experimental feature is no longer supported.</p> |
| <hr /> |
| |
| <h3 id="polymer_7">Multiple Dart script tags per document <a href="#polymer_7">#7</a></h3> |
| <p>Dartium currently allows only one script tag per document. Any |
| additional script tags might be ignored or result in an error. This will |
| likely change in the future, but for now, combine the script tags together into |
| a single Dart library.</p> |
| <hr /> |
| |
| <h3 id="polymer_8">Imports before script tags <a href="#polymer_8">#8</a></h3> |
| <p>It is good practice to put all your HTML imports at the beginning of the |
| document, above any Dart script tags. Today, the execution of Dart script tags |
| is not synchronous in Dartium, so the difference is not noticeable. However, |
| Dartium that will eventually change and make the timing of script tags execution |
| match how they are in JavaScript. At that point the order of your imports with |
| respect to script tags will be important. Following the practice of putting |
| imports first protects your app from a future breaking change in this respect.</p> |
| <hr /> |
| |
| <h3 id="polymer_9">Missing href on a <code><link></code> tag <a href="#polymer_9">#9</a></h3> |
| <p>All <code><link></code> tags should have a valid URL to a resource.</p> |
| <hr /> |
| |
| <h3 id="polymer_10"><code><element></code> is deprecated <a href="#polymer_10">#10</a></h3> |
| <p>Long ago <code><polymer-element></code> used to be called <code><element></code>. You probably ran |
| into this error if you were migrating code that was written on a very early |
| version of polymer.</p> |
| <hr /> |
| |
| <h3 id="polymer_11">Definition of a custom element not found <a href="#polymer_11">#11</a></h3> |
| <p>The polymer build was not able to find the definition of a custom element. This |
| can happen if an element is defined with a <code><polymer-element></code> tag, but you are |
| missing an HTML import or the import link is incorrect.</p> |
| <p>This warning can also be a false alarm. For instance, when an element is defined |
| programatically using <code>document.registerElement</code>. In that case the polymer build |
| will not be able to see the definition and will produce this warning.</p> |
| <hr /> |
| |
| <h3 id="polymer_12">Empty script tag <a href="#polymer_12">#12</a></h3> |
| <p>Script tags should either have a <code>src</code> attribute or a non-empty body.</p> |
| <hr /> |
| |
| <h3 id="polymer_13">Expected Dart mime-type <a href="#polymer_13">#13</a></h3> |
| <p>You seem to have a <code>.dart</code> extension on a script tag, but the mime-type |
| doesn't match <code>application/dart</code>.</p> |
| <hr /> |
| |
| <h3 id="polymer_14">Expected Dart file extension <a href="#polymer_14">#14</a></h3> |
| <p>You are using the <code>application/dart</code> mime-type on a script tag, so |
| the URL to the script source URL should have a <code>.dart</code> extension.</p> |
| <hr /> |
| |
| <h3 id="polymer_15">Script with both src and inline text <a href="#polymer_15">#15</a></h3> |
| <p>You have a script tag that includes both a <code>src</code> attribute and inline script |
| text. You must choose one or the other.</p> |
| <hr /> |
| |
| <h3 id="polymer_16">Incorrect instantiation: missing base tag in instantiation <a href="#polymer_16">#16</a></h3> |
| <p>When you declare that a custom element extends from a base tag, for example:</p> |
| <pre><code><polymer-element name="my-example" extends="ul"> |
| </code></pre> |
| <p>or:</p> |
| <pre><code><polymer-element name="my-example2" extends="ul"> |
| <polymer-element name="my-example" extends="my-example2"> |
| </code></pre> |
| <p>You should instantiate <code>my-example</code> by using this syntax:</p> |
| <pre><code><ul is="my-example"> |
| </code></pre> |
| <p>And not:</p> |
| <pre><code><my-example> |
| </code></pre> |
| <p>Only elements that don't extend from existing HTML elements are created using |
| the latter form.</p> |
| <p>This is because browsers first create the base element, and then upgrade it to |
| have the extra functionality of your custom element. In the example above, using |
| <code><ul></code> tells the browser which base type it must create before |
| doing the upgrade.</p> |
| <hr /> |
| |
| <h3 id="polymer_17">Incorrect instantiation: extra <code>is</code> attribute or missing <code>extends</code> in declaration <a href="#polymer_17">#17</a></h3> |
| <p>Creating a custom element using the syntax:</p> |
| <pre><code><ul is="my-example"> |
| </code></pre> |
| <p>means that the declaration of <code>my-example</code> extends transitively from <code>ul</code>. This |
| error message is shown if the definition of <code>my-example</code> doesn't declare this |
| extension. It might be that you no longer extend from the base element, in which |
| case the fix is to change the instantiation to:</p> |
| <pre><code><my-example> |
| </code></pre> |
| <p>Another possibility is that the declaration needs to be fixed to include the |
| <code>extends</code> attribute, for example:</p> |
| <pre><code><polymer-element name="my-example" extends="ul"> |
| </code></pre> |
| <hr /> |
| |
| <h3 id="polymer_18">Incorrect instantiation: base tag seems wrong <a href="#polymer_18">#18</a></h3> |
| <p>It seems you have a declaration like:</p> |
| <pre><code><polymer-element name="my-example" extends="div"> |
| </code></pre> |
| <p>but an instantiation like:</p> |
| <pre><code><span is="my-example"> |
| </code></pre> |
| <p>Both the declaration and the instantiation need to match on the base type. So |
| either the instantiation needs to be fixed to be more like:</p> |
| <pre><code><span is="my-example"> |
| </code></pre> |
| <p>or the declaration should be fixed to be like:</p> |
| <pre><code><polymer-element name="my-example" extends="span"> |
| </code></pre> |
| <hr /> |
| |
| <h3 id="polymer_19">No dashes allowed in custom attributes <a href="#polymer_19">#19</a></h3> |
| <p>Polymer used to recognize attributes with dashes like <code>my-name</code> and convert them |
| to match properties where dashes were removed, and words follow the camelCase |
| style (for example <code>myName</code>). This feature is no longer available. Now simply |
| use the same name as the property.</p> |
| <p>Because HTML attributes are case-insensitive, you can also write the name of |
| your property entirely in lowercase. Just be sure that your custom-elements |
| don't declare two properties with the same name but different capitalization.</p> |
| <hr /> |
| |
| <h3 id="polymer_20">Event handlers not supported here <a href="#polymer_20">#20</a></h3> |
| <p>Bindings of the form <code>{{ }}</code> are supported inside <code><template></code> nodes, even outside |
| of <code><polymer-element></code> declarations. However, those bindings only support binding |
| values into the content of a node or an attribute.</p> |
| <p>Inline event handlers of the form <code>on-click="{{method}}"</code> are a special feature |
| of polymer elements, so they are only supported inside <code><polymer-element></code> |
| definitions.</p> |
| <hr /> |
| |
| <h3 id="polymer_21">No expressions allowed in event handler bindings <a href="#polymer_21">#21</a></h3> |
| <p>Unlike data bindings, event handler bindings of the form <code>on-click="{{method}}"</code> |
| are not evaluated as expressions. They are meant to just contain a simple name |
| that resolves to a method in your polymer element's class definition.</p> |
| <hr /> |
| |
| <h3 id="polymer_22">Nested polymer element definitions not allowed <a href="#polymer_22">#22</a></h3> |
| <p>Because custom element names are global, there is no need to have a |
| <code><polymer-element></code> definition nested within a <code><polymer-element></code>. If you have |
| a definition inside another, move the second definition out.</p> |
| <p>You might see this error if you have an HTML import within a polymer element. |
| You should be able to move the import out of the element definition.</p> |
| <hr /> |
| |
| <h3 id="polymer_23">Polymer element definitions without a name <a href="#polymer_23">#23</a></h3> |
| <p>Polymer element definitions must have a name. You can include a name by using |
| the <code>name</code> attribute in <code><polymer-element></code> for example:</p> |
| <pre><code><polymer-element name="my-example"> |
| </code></pre> |
| <hr /> |
| |
| <h3 id="polymer_24">Custom element name missing a dash <a href="#polymer_24">#24</a></h3> |
| <p>Custom element names must have a dash (<code>-</code>) and can't be any of the following |
| reserved names:</p><ul><li><code>annotation-xml</code></li><li><code>color-profile</code></li><li><code>font-face</code></li><li><code>font-face-src</code></li><li><code>font-face-uri</code></li><li><code>font-face-format</code></li><li><code>font-face-name</code></li><li><code>missing-glyph</code></li></ul> |
| <hr /> |
| |
| <h3 id="polymer_25">Error while inlining an import <a href="#polymer_25">#25</a></h3> |
| <p>An error occurred while inlining an import in the polymer build. This is often |
| the result of a broken HTML import.</p> |
| <hr /> |
| |
| <h3 id="polymer_26">Error while inlining a stylesheet <a href="#polymer_26">#26</a></h3> |
| <p>An error occurred while inlining a stylesheet in the polymer build. This is |
| often the result of a broken URL in a <code><link rel="stylesheet" href="..."></code>.</p> |
| <hr /> |
| |
| <h3 id="polymer_27">URL to a script file might be incorrect <a href="#polymer_27">#27</a></h3> |
| <p>An error occurred trying to read a script tag on a given URL. This is often the |
| result of a broken URL in a <code><script src="..."></code>.</p> |
| <hr /> |
| |
| <h3 id="polymer_28">Attribute missing "_" prefix <a href="#polymer_28">#28</a></h3> |
| <p>Not all browsers support bindings to certain attributes, especially URL |
| attributes. Some browsers might sanitize attributes and result in an |
| incorrect value. For this reason polymer provides a special set of attributes |
| that let you bypass any browser internal attribute validation. The name of the |
| attribute is the same as the original attribute, but with a leading underscore. |
| For example, instead of writing:</p> |
| <pre><code><img src="{{binding}}"> |
| </code></pre> |
| <p>you can write:</p> |
| <pre><code><img _src="{{binding}}"> |
| </code></pre> |
| <p>For more information, see <a href="http://goo.gl/5av8cU">http://goo.gl/5av8cU</a>.</p> |
| <hr /> |
| |
| <h3 id="polymer_29">Attribute with extra "_" prefix <a href="#polymer_29">#29</a></h3> |
| <p>A special attribute exists to support bindings on URL attributes. For example, |
| this correctly binds the <code>src</code> attribute in an image:</p> |
| <pre><code><img _src="{{binding}}"> |
| </code></pre> |
| <p>However, this special <code>_src</code> attribute is only available for bindings. If you |
| just have a URL, use the normal <code>src</code> attribute instead.</p> |
| <hr /> |
| |
| <h3 id="polymer_30">Internal error: don't know how to include a URL <a href="#polymer_30">#30</a></h3> |
| <p>Sorry, you just ran into a bug in the polymer transformer code. Please file a |
| bug at <a href="http://dartbug.com/new">http://dartbug.com/new</a> including, if possible, some example code that |
| can help the team reproduce the issue.</p> |
| <hr /> |
| |
| <h3 id="polymer_31">Internal error: phases run out of order <a href="#polymer_31">#31</a></h3> |
| <p>Sorry, you just ran into a bug in the polymer transformer code. Please file a |
| bug at <a href="http://dartbug.com/new">http://dartbug.com/new</a> including, if possible, some example code that |
| can help the team reproduce the issue.</p> |
| <hr /> |
| |
| <h3 id="polymer_32"><code>@CustomTag</code> used on a private class <a href="#polymer_32">#32</a></h3> |
| <p>The <code>@CustomTag</code> annotation is currently only supported on public classes. If |
| you need to register a custom element whose implementation is a private class |
| (that is, a class whose name starts with <code>_</code>), you can still do so by invoking |
| <code>Polymer.register</code> within a public method marked with <code>@initMethod</code>.</p> |
| <hr /> |
| |
| <h3 id="polymer_33"><code>@initMethod</code> is on a private function <a href="#polymer_33">#33</a></h3> |
| <p>The <code>@initMethod</code> annotation is currently only supported on public top-level |
| functions.</p> |
| <hr /> |
| |
| <h3 id="polymer_34">Missing argument in annotation <a href="#polymer_34">#34</a></h3> |
| <p>The annotation expects one argument, but the argument was not provided.</p> |
| <hr /> |
| |
| <h3 id="polymer_35">Invalid argument in annotation <a href="#polymer_35">#35</a></h3> |
| <p>The polymer transformer was not able to extract a constant value for the |
| annotation argument. This can happen if your code is currently in a state that |
| can't be analyzed (for example, it has parse errors) or if the expression passed |
| as an argument is invalid (for example, it is not a compile-time constant).</p> |
| <hr /> |
| |
| <h3 id="polymer_36">No polymer initializers found <a href="#polymer_36">#36</a></h3> |
| <p>No polymer initializers were found. Make sure to either |
| annotate your polymer elements with @CustomTag or include a |
| top level method annotated with @initMethod that registers your |
| elements. Both annotations are defined in the polymer library ( |
| package:polymer/polymer.dart).</p> |
| <hr /> |
| |
| <h3 id="polymer_37">Event bindings with @ are no longer supported <a href="#polymer_37">#37</a></h3> |
| <p>For a while there was an undocumented feature that allowed users to include |
| expressions in event bindings using the <code>@</code> prefix, for example:</p> |
| <pre><code><div on-click="{{@a.b.c}}"> |
| |
| </code></pre> |
| <p>This feature is no longer supported.</p> |
| <hr /> |
| |
| <h3 id="polymer_38">Private symbol in event handler <a href="#polymer_38">#38</a></h3> |
| <p>Currently private members can't be used in event handler bindings. So you can't |
| write:</p> |
| <pre><code><div on-click="{{_method}}"> |
| </code></pre> |
| <p>This restriction might be removed in the future, but for now, you need to make |
| your event handlers public.</p> |
| <hr /> |
| |
| <h3 id="polymer_39">Private symbol in binding expression <a href="#polymer_39">#39</a></h3> |
| <p>Private members can't be used in binding expressions. For example, you can't |
| write:</p> |
| <pre><code><div>{{a.b._c}}</div> |
| </code></pre> |
| <hr /> |
| |
| <h3 id="polymer_40">A warning was found while parsing the HTML document <a href="#polymer_40">#40</a></h3> |
| <p>The polymer transformer uses a parser that implements the HTML5 spec |
| (<code>html5lib</code>). This message reports a |
| warning that the parser detected.</p> |
| <hr /> |
| |
| <h3 id="polymer_41">Possible flash of unstyled content <a href="#polymer_41">#41</a></h3> |
| <p>Custom element found in document body without an "unresolved" attribute on it or |
| one of its parents. This means your app probably has a flash of unstyled content |
| before it finishes loading. See <a href="http://goo.gl/iN03Pj">http://goo.gl/iN03Pj</a> for more info.</p> |
| <hr /></body> |
| </html> |