Добавить страницу на стек из страницы в отдельном файле QML

У меня задуманна куча переходов по страничкам и все переходы зависят от состояния предыдущей страницы

Загружаюсь с main.qml

ApplicationWindow {
    StackView {
        id: mainStack
        initialItem: "page0.qml"
        anchors.fill: parent
    }
}

На первой странице просто заглушка

Page {
    Image {}
    MouseArea {
        anchors.fill: parent
        onClicked: {
            mainStack.push("Page1.qml") // не видит объект mainStack
        }
    }
}

Как мне протащить mainStack на все страницы?


Ответы (1 шт):

Автор решения: eri

Сделал так

ApplicationWindow {

    Component.onCompleted: {
        mainStack.push("page0.qml", {mainStack: mainStack});
    }
    StackView {
        id: mainStack
        anchors.fill: parent
    }
}

Но на 5ом шаге понадобится приостановить таймер живущий на главном окне. Как не тащить его через все страницы, в которых он не нужен?

Можно получить ссылку на стэк из дочерней страницы без передачи аргумента

Page {
    property StackView mainStack: StackView.view
}
→ Ссылка