как заставить загрузчик перезагрузить / сбросить или удалить кеш предварительно загруженной qml-страницы - PullRequest
0 голосов
/ 05 ноября 2019

В qml у меня есть страница main.qml, если я щелкаю по прямоугольнику на этой странице, он открывает компонент из файла second.qml, и появляется список. Список очень длинный и может быть прокручен вниз. Чтобы перейти к main.qml (предыдущая страница) из second.qml, это также можно сделать, создав кнопку возврата. Пока все в порядке , и это работает и выполняется с помощью загрузчика, а затем изменяя источник загрузчика.

Проблема начинается , когда я повторно посещаю second.qml послеснова щелкнув по прямоугольнику в main.qml. На этот раз он показывает список, оставленный в последний раз. То, что я хочу, это перезагрузить second.qml, как он загрузил его в первый раз. Я сталкивался с явным компонентным кэшем и т. Д. Однако он не работает для меня.

Простой пример на , как очистить кэш-память загрузчика , чтобы перезагрузить его, как будто я был загружен в первый разв qml было бы полезно.

в main.qml

    MouseArea {
        anchors.fill: parent
        onClicked: {
            pp.close()

            //clearComponentCache(loader)

            loader.setSource("second.qml",
                             {   "x":0,
                                 "y":30});
            //loader.reload()


        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...