# [Usage](../../../usage.md) > [Components and standard attributes](../basics.md) > value

---
`value` | `->setValue()`

Normally used for `Form` components, this set the actual value of the field. Or in `Visual` components can be used sometimes to set a label.

| Types              | Default |
|--------------------|---------|
| `string`, `number` | `null`  |

Current state for Form fields (`Input`, `Select`, `TextArea`); occasionally the display label for Visuals. On edit routes it prefills from the record; on create it is usually empty. When omitted (`null`) the field falls back to `default`, then empty.
`value` always wins over `default`.

### Example
Blade:
```php
{!! \KFramework\Components\Forms\Input::make()->setName('email')->setValue('a@b.com') !!}
```
Controller:
```php
Input::make('email')->setValue($record->email ?? null);
```

### Interaction / tips
- Pair with `default` (../shared_attributes/default.md): `value` for edit, `default` for create fallback.
- Bulk-set via `values` (../shared_attributes/values.md) keyed by `name` (../shared_attributes/name.md).
- Reactive updates via `updateOnChange` (../shared_attributes/update_on_change.md).

See also: [default](default.md), [values](values.md), [defaults](defaults.md), [name](name.md), [basics](../basics.md), [Input](../forms/input.md).