- Qt 6.11
- Qt Qml
- Qt Qml Tooling
- qmllint
- QML Lint Warning and Errors
- Component is missing a required property
- Qt 6.11.1 Reference Documentation

Redundant Optional Chaining ◦ Restricted type

# Component is missing a required property

This warning category is spelled `[required]` by qmllint.

## Component is missing a required property

### What happened?

The required property of a component was not set.

### Why is this bad?

QML applications where components miss required properties will misbehave: they will not start at all if a missing required property is detected statically. Dynamically created components with missing required properties will not be created at runtime: they will be null instead.

### Example

     import QtQuick

     Item {
         component RepeatMe: Item {
             required property int index;
             required property int helloWorld;
         }

         RepeatMe {} // not ok: required properties index and helloWorld not set

         Repeater {
             model: 10
             RepeatMe {} // not ok: required property index set by Repeater, but not helloWorld
         }
     }

To fix this warning, set the required properties:

     import QtQuick

     Item {
         component RepeatMe: Item {
             required property int index;
             required property int helloWorld;
         }

         RepeatMe {
             index: 0
             helloWorld: 42
         } // ok: all required properties were set

         Repeater {
             model: 10
             RepeatMe {
                 helloWorld: index * 2 + 1
             } // ok: all required properties were set: index by the Repeater and helloWorld by the user
         }
     }

See also QML Coding Conventions - Required Properties.

Redundant Optional Chaining ◦ Restricted type