Modules hérités
Les modules hérités sont des modules dont le fichier de spécification qmldir ne contient pas de directive d'identification de module. Un module hérité peut être installé dans le chemin d'importation de QML (en tant que module hérité installé) ou importé par les clients avec une importation relative (en tant que module hérité localisé). Il est conseillé aux clients d'éviter, dans la mesure du possible, d'utiliser des modules hérités. Les développeurs de modules doivent s'assurer qu'ils créent des modules identifiés et non des modules hérités.
Modules hérités installés
Un module installé, non identifié, se voit automatiquement attribuer un identifiant par le moteur QML. Cet identifiant implicitement défini est égal au chemin d'installation du module (relatif au chemin d'importation QML) où les caractères de séparation de répertoire sont remplacés par des points.
Un module non identifié qui est installé dans le chemin d'importation QML a la sémantique suivante :
- il peut être importé par les clients via l'identifiant implicite du module
- les clients doivent spécifier une version lors de l'importation du module
- les conflits de noms de types sont résolus arbitrairement par le moteur QML, et la manière dont les conflits sont résolus n'est pas garantie de rester la même entre les différentes versions de QML
- d'autres modules hérités peuvent modifier ou remplacer les définitions de type fournies par le module hérité installé.
Modules hérités localisés
Un module non identifié importé via une instruction d'importation de chemin de répertoire relatif est chargé par le moteur en tant que module hérité localisé. La sémantique suivante s'applique aux modules hérités localisés :
- ils peuvent être importés par les clients via un chemin d'importation relatif
- il n'est pas obligatoire pour les clients de spécifier une version lors de l'importation du module
- si aucune version d'importation n'est fournie par le client dans la déclaration d'importation, aucune garantie n'est donnée par le moteur QML quant à la version de la définition d'un nom de type donné qui sera importée
- les conflits de noms de types sont résolus arbitrairement par le moteur QML, et la manière dont les conflits sont résolus n'est pas garantie comme étant la même entre les différentes versions de QML
- d'autres modules hérités peuvent modifier ou remplacer les définitions de type fournies par le module hérité localisé.
Un module existant localisé peut résider sur le système de fichiers local ou sur le réseau et peut être référencé par une URL qui spécifie le chemin d'accès au système de fichiers ou l'URL du réseau.
Voir aussi Moderniser les modules QML et Porter les modules QML vers CMake.
© 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.