Sur cette page

Impossible d'accéder à un singleton en tant que propriété d'un objet

Cette catégorie d'avertissement est désignée par qmllint sous le nom « [access-singleton-via-object] ».

Accéder au singleton via un objet

Que s'est-il passé ?

Vous avez accédé à un singleton en utilisant la syntaxe permettant d'accéder aux propriétés associées à partir d'un espace de noms.

Pourquoi est-ce un problème ?

On ne peut pas accéder aux singletons de cette manière. L'expression donnera le résultat « undefined ».

Exemple

import QtQml
import QtQuick as QQ

QtObject {
    id: root
    // Cannot access singleton as a property of an object. Did you want to access an attached object?
    property var singletonAccess: root.QQ.Application.platform
}

Pour corriger cet avertissement, supprimez le mot- id u « property » devant l'espace de noms si vous aviez l'intention d'utiliser le singleton. Sinon, vérifiez qu'il n'y a pas de faute de frappe si vous souhaitiez accéder à une propriété associée.

import QtQml
import QtQuick as QQ

QtObject {
    id: root
    property var singletonAccess: QQ.Application.platform
    property bool attachedPropertyAccess: root.QQ.ListView.isCurrentItem
}

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.