Component is Missing a Required Property

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.

范例

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
    }
}
					

You can fix this warning by setting 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
    }
}
					

另请参阅 QML Coding Conventions - Required Properties .