---
url: "https://vueda.dev/v3/reference/api/vue/WidgetJsonReadOnly.md"
title: "WidgetJsonReadOnly"
---

# WidgetJsonReadOnly

## Overview

Read-only presentation for `JSON` fields. Wraps {@link WidgetReadOnly} so the row keeps
its label association, theme slots, and lookup behavior, and fills the value with
{@link JsonDisplay} instead of the one-line literal the plain read-only widget prints.

The block form is the point: a read view has the room to indent a nested payload, while
a list cell does not, so {@link ColumnJson} renders the same value inline. Both give a
null value the same dash.

`fieldMappings` selects this widget through `readOnlyWidget` and supplies the display
options through `readOnlyWidgetProps`.

A consumer's own `default` slot still wins: this widget supplies the `JSON` rendering
only when the field has no `widget(fieldName)default` override.

## Props

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| <span id="prop-indent">indent</span> | `number` |  | `2` | Spaces per nesting level. |

## Slots

### `slotName` {#slot-slotName}

Scoped slot.

## Source

`client/lib/widgets/WidgetJsonReadOnly.vue`
