Appearance
Error codes
Every error Volt throws carries a code. A development build prints the full sentence with it; a production build leaves the sentence out and keeps the code, what failed, and a link here:
[volt] V0212 target=#app https://voltjs.dev/e/V0212So a report from production is one click from the explanation a development build would have printed. How an error is shaped — code, detail, docs — is under Errors.
The codes are numbered by family, a hundred to each, and a code is never reused for a second failure. The pages are generated from the framework's source when this site is built, so a message reworded in the source is reworded here.
Development only marks a check a production build does not make — an authoring mistake caught while the program is written. Those codes never appear in a production error.
Build and environment
| Code | What it says | |
|---|---|---|
| V0101 | ‹entry› needs a server build. |
Components
| Code | What it says | |
|---|---|---|
| V0201 | @Component on ‹name› needs a selector. | Development only |
| V0202 | @Component can only be applied to a class. | |
| V0203 | @Prop applies to a field, not ‹kind› (‹name›). | |
| V0204 | @Prop cannot be used on a static member (‹name›). | |
| V0205 | @Prop cannot be used on a symbol-named property. | |
| V0206 | ‹name› declares templateUrl "‹templateUrl›", which is resolved at build time. | |
| V0207 | ‹name› is not decorated with @Component. | |
| V0208 | <‹selector›> has no prop "‹key›". | Development only |
| V0209 | <‹selector›> requires the prop "‹alias›". | Development only |
| V0210 | <‹tag›> is a component, so :on-‹name› does not apply. | Development only |
| V0211 | Unknown component <‹tag›> used by ‹name›. | |
| V0212 | Mount target not found: ‹target› |
Server markup
| Code | What it says | |
|---|---|---|
| V0301 | ‹what› contains "</‹tag›", which ends the element rather than appearing inside it. | |
| V0302 | a server render has no elements, so :portal needs a selector string or nothing at all — an element target can only be resolved in a browser. |
Hydration state
| Code | What it says | |
|---|---|---|
| V0401 | the hydration state for "‹key›" could not be serialized: ‹cause› | |
| V0402 | hydration state cannot carry a ‹kind› at "‹key›". |
Streaming
| Code | What it says | |
|---|---|---|
| V0501 | a boundary was written as text rather than as a child. |
DOM runtime
| Code | What it says | |
|---|---|---|
| V0601 | :portal expects an element, a selector string, or nothing. |