QML 動的スコープが機能しない (ReferenceError)

QML 動的スコープが機能しない (ReferenceError)

例を再現しようとしていますここどこタイトルページ.qmlコンポーネントは2つを作成しますタイトルテキストインスタンスはタイトルテキストタイプは別のファイルにあります(セクション:コンポーネントインスタンス階層の下)。Ubuntu SDKで新しいプロジェクト(C++プラグイン(qmake)を使用したQMLアプリ)を作成しました。メイン.qml次のようになります:

import QtQuick 2.4
import Ubuntu.Components 1.2
import ScopeTesting 1.0

MainView {
    objectName: "mainView"
    applicationName: "scopetesting.username"
    width: units.gu(100)
    height: units.gu(75)
    Item {
        property string title
        TitleText {
            size: 22
            anchors.top: parent.top
        }
        TitleText {
            size: 18
            anchors.bottom: parent.bottom
        }
    }
}

タイトルテキスト.qml例のようになります:

import QtQuick 2.4
import Ubuntu.Components 1.2
import ScopeTesting 1.0

Text {
    property int size
    text: "<b>" + title + "</b>"
    font.pixelSize: size
}

私が受け取ったのは ReferenceError です:

...TitleText.qml:7: ReferenceError: タイトルが定義されていません

ここで何が足りないのでしょうか? 誰か助けてくれませんか?

答え1

オブジェクトは、ファイルのルート オブジェクトに属していない限り、他のオブジェクトのプロパティを直接使用することはできません。

property string titleに移動するMainView、または ID を付与してID を通じてItem使用します。title

関連情報