Component tags

Contract

GX tag case decides the first resolver. Uppercase tags are component calls to Go component functions. Lowercase tags are safe Element names.

Unknown uppercase tags fail lint before render:

package notices

var badTag = <Notcie message={"Saved"}></Notcie>

bus gx lint --format json bad_tag.gx exits non-zero with code: unknown-component at the Notcie tag.

Resolution

A component name must be UpperCamelCase when it is used as a GX tag. The compiler resolves it as a Go callable in the same package or through ordinary Go imports available to the .gx source. Unknown component functions or method values fail lint before render.