- Prop
invalid- Type
boolean | undefined- Default
false- Requirement
- optional
- Description
- Error state — crimson border.
Docs Components Primitives
NativeSelect
React example follows below.
Vue example follows below.
Angular example follows below.
Svelte example follows below.
Solid example follows below.
- parts
- —
- nodes
- —
- size
- —
- part
- —
ts
import { NativeSelect } from "@grassroot/ui-react"; export default function NativeSelectDemo() { return ( <div className="flex flex-col gap-3.5"> <NativeSelect aria-label="Region" defaultValue="us-east"> <option value="us-east">us-east-1</option> <option value="us-west">us-west-2</option> </NativeSelect> <NativeSelect aria-label="Region" invalid defaultValue="us-east"> … </NativeSelect> </div> );}- parts
- —
- nodes
- —
- size
- —
- part
- —
ts
<script setup lang="ts">import { NativeSelect } from "@grassroot/ui-vue";</script> <template> <div class="flex flex-col gap-3.5"> <NativeSelect aria-label="Region" default-value="us-east"> <option value="us-east">us-east-1</option> <option value="us-west">us-west-2</option> </NativeSelect> <NativeSelect aria-label="Region" invalid default-value="us-east">…</NativeSelect> </div></template>- parts
- —
- nodes
- —
- size
- —
- part
- —
ts
import { Component } from "@angular/core";import { GrassrootNativeSelect } from "@grassroot/ui-angular"; @Component({ selector: "app-native-select-demo", standalone: true, imports: [GrassrootNativeSelect], host: { style: "display: contents" }, template: ` <div class="flex flex-col gap-3.5"> <grassroot-native-select aria-label="Region" defaultValue="us-east"> <option value="us-east">us-east-1</option> <option value="us-west">us-west-2</option> </grassroot-native-select> <grassroot-native-select aria-label="Region" [invalid]="true" defaultValue="us-east" >…</grassroot-native-select > </div> `,})export class NativeSelectDemoComponent {} export default NativeSelectDemoComponent;- parts
- —
- nodes
- —
- size
- —
- part
- —
ts
<script lang="ts"> import { NativeSelect } from "@grassroot/ui-svelte";</script> <div class="flex flex-col gap-3.5"> <NativeSelect aria-label="Region" value="us-east"> <option value="us-east">us-east-1</option> <option value="us-west">us-west-2</option> </NativeSelect> <NativeSelect aria-label="Region" invalid value="us-east">…</NativeSelect></div>- parts
- —
- nodes
- —
- size
- —
- part
- —
ts
/** @jsxImportSource solid-js */import { NativeSelect } from "@grassroot/ui-solid"; export default function NativeSelectDemo() { return ( <div class="flex flex-col gap-3.5"> <NativeSelect aria-label="Region" value="us-east"> <option value="us-east">us-east-1</option> <option value="us-west">us-west-2</option> </NativeSelect> <NativeSelect aria-label="Region" invalid value="us-east"> … </NativeSelect> </div> );}Installation
API Reference
Import
import { NativeSelect } from "@grassroot/ui-react";
Props
Prop
Type
Default
Requirement
Description
invalidboolean | undefinedfalseoptional
Error state — crimson border.
Content regions
children
Native attributes
Standard DOM and ARIA attributes not listed above spread onto the root element.
Import
import { NativeSelect } from "@grassroot/ui-vue";
Props
Prop
Type
Default
Requirement
modelValuestring | undefined—
optional
defaultValuestring | undefined—
optional
disabledboolean | undefined—
optional
invalidboolean | undefinedfalseoptional
- Prop
modelValue- Type
string | undefined- Default
- —
- Requirement
- optional
- Prop
defaultValue- Type
string | undefined- Default
- —
- Requirement
- optional
- Prop
disabled- Type
boolean | undefined- Default
- —
- Requirement
- optional
- Prop
invalid- Type
boolean | undefined- Default
false- Requirement
- optional
Events
| Event | Payload |
|---|---|
update:modelValue | [value: string] |
Content regions
default
Import
import { Component } from "@angular/core";
import { GrassrootNativeSelect } from "@grassroot/ui-angular";
Props
Prop
Type
Default
Requirement
valuestring—
optional
defaultValuestring—
optional
disabledbooleanfalseoptional
requiredbooleanfalseoptional
namestring—
optional
invalidbooleanfalseoptional
"aria-label"string | undefinedundefinedoptional
- Prop
value- Type
string- Default
- —
- Requirement
- optional
- Prop
defaultValue- Type
string- Default
- —
- Requirement
- optional
- Prop
disabled- Type
boolean- Default
false- Requirement
- optional
- Prop
required- Type
boolean- Default
false- Requirement
- optional
- Prop
name- Type
string- Default
- —
- Requirement
- optional
- Prop
invalid- Type
boolean- Default
false- Requirement
- optional
- Prop
"aria-label"- Type
string | undefined- Default
undefined- Requirement
- optional
Events
| Event | Payload |
|---|---|
valueChange | string |
Content regions
default
Import
import { NativeSelect } from "@grassroot/ui-svelte";
Props
Prop
Type
Default
Requirement
valuestring—
optional
disabledbooleanfalseoptional
invalidbooleanfalseoptional
- Prop
value- Type
string- Default
- —
- Requirement
- optional
- Prop
disabled- Type
boolean- Default
false- Requirement
- optional
- Prop
invalid- Type
boolean- Default
false- Requirement
- optional
Content regions
children
Import
import { NativeSelect } from "@grassroot/ui-solid";
Props
Prop
Type
Default
Requirement
invalidboolean—
optional
classNamestring—
optional
- Prop
invalid- Type
boolean- Default
- —
- Requirement
- optional
- Prop
className- Type
string- Default
- —
- Requirement
- optional
Content regions
children
Native attributes
Standard DOM and ARIA attributes not listed above spread onto the root element.