[英]How can i stop Radlistview from reloading the list when i navigate back to the page
我有一个包含表单的页面,然后将表单数据传递到下一页,该页面显示数据库中的相应项目。 一切正常,当我点击一个项目时,它会按预期将我带到另一个页面。 但是当我 go 回到带有列表项的页面时,它会重新加载列表。 我该如何阻止它,我希望用户返回 go 并继续从他们停止的地方滚动,就像 instagram 探索页面一样。
exports.pageLoaded = function (args) {
const page = args.object;
const searchViewModel = new SearchViewModel();
page.bindingContext = searchViewModel;
searchViewModel.initDataItems();
searchViewModel.addMoreItemsFromSource(8);
}
问题
我认为问题是因为我使用了const searchViewModel = new SearchViewModel();
在 pageLoaded function 但我没有替代方案,我这样做是因为上一页正在向显示列表的页面发送数据。 如果我不这样做,它不会在用户搜索时重新加载列表。
我的目标
我想要的是页面在用户搜索时加载新项目,然后当用户单击项目并返回列表时,它不应该重新加载列表而是继续。
我的问题
如何在不删除列表视图上的项目的情况下导航到另一个页面onItemTap
。 或者我什至可以使用哪个页面,它只会在页面第一次打开时触发
游乐场样本
我找到了一个解决方案,使用模态页面
您的项目点击将打开一个模式页面,因此列表视图项目仍然存在。 所以代码将是:
const modalViewModule = "image/image";
exports.onImageTap = function (args) {
const view = args.view;
// const page = view.page;
const tappedItem = view.bindingContext;
const mainView = args.object;
const option = {
context: tappedItem,
fullscreen: true,
};
mainView.showModal(modalViewModule, option);
}
然后您打开的模态页面将是
<Page shownModally="onShownModally">
<!-- Your page content -->
</Page>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.