【问题标题】:NativeScript Vue: What is the purpose of navigatingTo, navigatingFrom and other Page events?NativeScript Vue:navigatingTo、navigatingFrom等Page事件的目的是什么?
【发布时间】:2019-07-05 06:11:52
【问题描述】:

我试图了解如何使用像 navigatedFrom 这样的页面事件。 这是一个基本模板:

<Page @navigatedFrom="navigatedFunc">
   <StackLayout></StackLayout>
</Page>

假设在我的脚本部分,我在方法部分列出了函数navigatedFunc

navigatedFunc: function(args) {
   // what would I do here or check against? How would you check against a specific screen title you navigated from?
}

它会被用来检查您从哪个特定视图导航吗?就像我可以在那个函数中做一个条件检查,如果用户来自帐户页面,然后做点什么?

【问题讨论】:

  • 如果你想在用户离开页面后运行一些脚本(在 UI 上不再可见),那么这就是你编写它的地方。
  • Manoj 所说的。举个例子,我通常在navigatingTo中获取API数据,很像Vuecreatedmounted
  • @TomG @Manok 我实际上在想@TomG 上面所说的……我不能用mounted()created() 做同样的事情吗? Page 事件是否提供了其他功能?与navigatedFrom 一样,有没有办法检查您从中导航的模块名称,所以如果我想在从页面 Z 导航到页面 X 而不是从页面 Z 导航到页面 X 时执行特定的操作,例如,从第 Y 页到第 X 页?
  • {N} 页面事件由导航触发,而 Vue 通过渲染、更新等方式进行挂钩。这意味着向前导航的差异不大,但向后导航很重要。虽然 {N} $navigateBack 触发页面事件,但不会调用 Vue createdmounted 等,因为页面存储在导航堆栈中。
  • 啊!没有想到 mounted() 不会因为导航而被称为倒退。堆。完美,非常感谢@TomG

标签: nativescript nativescript-vue


【解决方案1】:

如果您想在页面出现或消失时运行一些代码,则使用这些事件。如果您熟悉原生 iOS 应用,它们就像 viewDidAppearviewDidDisappear 方法。

 

navigatingTo事件在进入注册页面时触发。

当页面导航完成时,navigatedTo 事件触发。

当离开页面的导航开始时触发navigatingFrom 事件。

当离开页面完成导航时触发navigatedFrom事件。

 

来自NativeScript documentation 的这张图片可能会帮助您可视化流程:

【讨论】:

    猜你喜欢
    • 2016-03-30
    • 2023-03-05
    • 2019-07-29
    • 2021-03-08
    • 2010-09-19
    • 2022-10-19
    • 2011-01-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多