속성 누락
qmllint에서는 이 경고 범주를 ' [missing-property] '로 표기합니다.
존재하지 않는 기본 속성에 할당할 수 없음
무슨 일이 발생했나요?
존재하지 않는 기본 속성에 객체를 할당했습니다.
왜 문제가 됩니까?
QML 엔진은 런타임에 이 객체를 할당할 수 없습니다.
예시
이 경고를 해결하려면 바인딩하려는 속성을 명시하거나, 해당 타입의 작성자인 경우 속성을 기본값으로 지정하십시오:
import QtQuick
Item {
component MyType: QtObject { property Item myItem; }
MyType {
myItem: Item {}
}
component AlternativeMyType: QtObject { default property Item myItem; }
AlternativeMyType {
Item {} // bound to myItem via default property
}
}속성이 존재하지 않습니다
무슨 일이 일어난 건가요?
존재하지 않는 속성에 표현식을 할당했습니다.
왜 문제가 될까요?
QML 엔진은 런타임 시 이 표현식을 할당할 수 없습니다.
예시
이 경고를 해결하려면 바인딩을 제거하거나 오타가 있을 경우 수정하십시오:
유형에서 멤버를 찾을 수 없음
무슨 일이 있었나요?
QML 툴링에서 찾을 수 없는 필드 멤버 표현식 내의 멤버에 접근했습니다. 필드 멤버 표현식은 someId.someProperty 형식의 표현식입니다.
예를 들어 입력 오류가 있는 경우와 같이 해당 멤버가 아예 존재하지 않을 수도 있습니다. 또는 런타임 시에는 존재할 수 있지만(항상 존재하는 특정 하위 유형에 존재하기 때문), 정적으로 선언된 유형에는 존재하지 않을 수도 있습니다.
이것이 왜 문제가 될까요?
QML 툴링이 이 멤버를 찾을 수 없으므로, 정의 위치로 이동(go-to-definition)이나 자동 완성(autocomplete)과 같은 기능이 작동하지 않습니다. 실행 시점에 해당 멤버가 실제로 존재하지 않으면 오류가 발생하거나 잘못된 결과가 나올 수 있습니다. 해당 멤버가 실행 시점에 항상 존재한다면 오류는 발생하지 않겠지만, 이 경우에도 최적화가 누락되어 성능 저하가 발생할 수 있습니다.
예시
속성이 실제로 존재하지 않음
이 경고를 해결하려면 바인딩을 제거하거나 오타가 있을 경우 수정하십시오:
속성은 존재하지만 유형이 충분히 구체적이지 않은 경우
import QtQuick
import QtQuick.Controls.Basic
Item {
component Message : Item {
required property string sender
required property string text
}
ListView {
id: messageView
delegate: Message {}
}
Button {
text: "Reply to %1".arg(messageView.currentItem.sender) // not ok
}
}이 경고를 해결하려면, 읽어온 객체를 더 구체적인 유형으로 형변환하십시오:
import QtQuick
import QtQuick.Controls.Basic
Item {
component Message : Item {
required property string sender
required property string text
}
ListView {
id: messageView
delegate: Message {}
}
Button {
text: "Reply to %1".arg((messageView.currentItem as Message).sender) // now ok
}
}이 예제에서 ` messageView`의 ` currentItem ` 속성의 선언된 유형은 ` Item`이며, 이 유형에는 ` sender ` 속성이 없습니다. ` sender `는 ` Message`에서만 정의되어 있습니다. 하지만 여기서는 ` currentItem `가 항상 ` Message`를 포함한다는 것을 알고 있으므로, 유형 어설션을 사용하여 ` currentItem `를 ` Message `로 형 변환할 수 있습니다.
© 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.