【问题标题】:ionic 2, run script on active page ONLYionic 2,仅在活动页面上运行脚本
【发布时间】:2016-11-26 23:45:14
【问题描述】:

我在 ionic 2 上使用带有 typescript 的标签。

我在选项卡 1 上有一个计时器,它每隔 第二个。

在选项卡 2 上,我有一个计时器可以做同样的事情

我不希望标签一上的计时器脚本运行 用户是否以及何时在选项卡 2 上。

我尝试过使用标签 ID

this.tab_id = nav.id

if(this.tab_id=='0-0' && this.tab_id!='0-1'){
  this.start()
  setInterval(()=>{
      this.start()
  },2000)
}

这不起作用...标签 1 中的脚本在单击标签 2 后继续运行

我也在 tab1.ts 上试过这个

ionViewDidEnter() {
this.start()
this.run_scripts = setInterval(()=>{
                        this.start()
                    },2000)
}
ionViewDidLeave() {
 clearInterval(this.run_scripts);
}

有什么办法可以做到这一点吗?

【问题讨论】:

  • 这段代码看起来没什么问题。也许您对其他逻辑有疑问?

标签: typescript angular ionic2


【解决方案1】:

使用 viewDidEnter 和 viewDidLeave

ionViewDidEnter() {
  this.start()
  this.run_scripts = setInterval(()=>{
                          this.start()
                      },2000)
  this.runGame()

 }
 ionViewDidLeave() {
   clearInterval(this.run_scripts);
   clearInterval(this.int_players);
   clearInterval(this.game_timer);
 }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-10
    • 1970-01-01
    • 1970-01-01
    • 2017-10-02
    • 1970-01-01
    • 1970-01-01
    • 2017-09-08
    相关资源
    最近更新 更多