해결되지 않은 유형
이 카테고리에는 다음과 같은 경고가 포함됩니다:
- 유형이 사용되었지만 확인되지 않았습니다.
- 메서드의 반환 유형에 대한 유형을 찾을 수 없습니다.
- 메서드의 매개변수 유형에 대한 유형을 찾을 수 없습니다.
- 속성의 유형이 불완전합니다; 가져오기가 누락되었을 수 있습니다.
- 속성의 유형을 찾을 수 없음; 종속성 항목이 누락되었거나 선언적으로 노출되지 않은 유형 때문일 수 있습니다.
- 속성 유형이 완전히 해결되지 않았습니다; 종속성 항목이 누락되었거나 유형이 선언적으로 노출되지 않았기 때문일 수 있습니다.
- 네임스페이스에서 유형을 찾을 수 없음
이러한 경고는 일반적으로 QML 모듈을 사용 중이거나 작성 중인지에 따라 누락된 가져오기 또는 결함이 있는 QML 모듈을 나타냅니다.
이 경고 카테고리의 철자는 [unresolved-type]
입니다.
QML 모듈 사용자의 경우
무슨 일이 있었나요?
QML 툴링에서 찾을 수 없는 유형을 사용했습니다. 일반적으로 잠재적인 오타, 가져오기 누락 또는 가져오기 경로가 부적절하게 설정되었음을 나타냅니다.
왜 이런 문제가 발생하나요?
해당 유형은 QML 툴링에서 찾을 수 없으며, 대부분의 경우 QML 엔진에서도 찾을 수 없습니다.
예시
오타
import QtQuick Itme { ... }
이 경고를 수정하려면 오타를 수정하세요:
import QtQuick Item { ... }
가져오기 문이 누락되었습니다.
Item { ... }
이 경고를 수정하려면 Item
을 노출하는 모듈을 가져오세요:
import QtQuick Item { ... }
가져오기 문을 추가해도 도움이 되지 않으면 가져오기 경로를 살펴보세요.
QML Language Server 을 통해 이 경고가 표시되는 경우 설정이 불완전할 수 있습니다.
QML 모듈 작성자의 경우
무슨 일인가요?
QML 툴링이 QML 모듈에서 유형을 찾을 수 없습니다. 직접 또는 간접적으로 QML에 노출하는 유형일 수 있습니다:
- 기본 유형
- 속성 유형
- 신호, 슬롯 또는
Q_INVOKABLE
매개변수 유형 Q_INVOKABLE
반환 유형
모듈에서 해결되지 않은 유형이 노출된 경우 선언적 유형 등록이 누락되었을 수 있습니다.
그렇지 않으면 QML 모듈에 선언되지 않은 종속성이 있어 해결되지 않은 유형을 노출하고 있을 수 있습니다.
이것이 왜 나쁜가요?
QML 툴링이 해당 유형에서 작동하지 않으며 QML 모듈 사용자에게 수정할 수 없는 잘못된 경고가 표시됩니다.
예시
누락된 유형 등록
선언적으로 유형을 등록하는 방법은 C++에서 QML 유형 정의하기를 참조하세요. QML에 직간접적으로 노출된 모든 유형과 열거형이 등록되었는지 확인하세요.
누락된 QML 모듈 종속성
MyItem
을 QML 모듈의 C++ 유형으로 설정하세요:
class MyItem: public QQuickItem { ... QML_ELEMENT ... Q_PROPERTY(SomeType someProperty READ someProperty WRITE setSomeProperty NOTIFY somePropertyChanged) ... }
QQuickItem
또는 SomeType
을 먼저 확인하지 못하면 QML 툴링이 MyItem
을 올바르게 확인할 수 없습니다. QQuickItem
이 QtQuick
QML 모듈에 있고 SomeType
이 SomeModule
에 있는 경우, QML 모듈 정의에 이러한 C++ 종속성을 명시해야 합니다.
이렇게 하려면 QML 모듈 정의에 종속성을 추가하세요. 예를 들어 DEPENDENCIES
을 사용하여 이 작업을 수행할 수 있습니다:
qt_add_qml_module( ... DEPENDENCIES QtQuick # for QQuickItem to be resolved SomeModule # for SomeType to be resolved )
자세한 내용은 QML 모듈 간 C++ 종속성 선언하기를 참조하세요.
© 2025 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.