收藏
回答

a页面实例了app.js,在app.js里面的方法如何调用a页面内page的某个方法?

const app = getApp(),

回答关注问题邀请回答
收藏

2 个回答

  • brave
    brave
    2022-02-15
    // app.js
    App({
      pageHandler(page) {
        page.testHandler()
      }
    })
    
    // page.js
    const app = getApp()
    Page({
      onLoad() {
        app.pageHandler(this)
      },
      testHandler() {
        console.log("testing success")
      }
    })
    另外,很好奇为什么你不直接在a页面调用a页面的方法?
    
    2022-02-15
    有用 3
    回复 8
    • Mr.W
      Mr.W
      2022-02-15
      你公共方法放哪里呀
      2022-02-15
      回复
    • brave
      brave
      2022-02-15回复Mr.W
      你没捋清楚  你的方法写在a页面,那就直接在a页面调用啊,为什么还要借助app.js去调用当前页面的方法?
      2022-02-15
      回复
    • Mr.W
      Mr.W
      2022-02-15
      打开页面方法封装了下,写在app.js,a页面实例,打开b,b返回值同时执行方法,返回值app.js可以接收并log,但要执行的方法每个页面都不同,所以要由app.js内方法去调用a的方法
      2022-02-15
      回复
    • Mr.W
      Mr.W
      2022-02-15
      你的这个方法不好用,报错:page is not defined
      2022-02-15
      回复
    • brave
      brave
      2022-02-15回复Mr.W
      你的意思明白了,就是不同页面之间调用对方的方法。你可以在 B 页面通过 getCurrentPages() 获取到 A 页面实例,然后调用 A 页面方法
      2022-02-15
      回复
    查看更多(3)
  • 微喵网络
    微喵网络
    2022-02-15

    比如app.js里的方法是a(),a页面page里的方法是b()

    app.js

    a(that) {
      that.b()
    }
    


    a页面page

    const app=getApp()
    app.a(this)
    


    2022-02-15
    有用
    回复 1
    • Mr.W
      Mr.W
      2022-02-15
      这个不对,谢谢你
      2022-02-15
      回复
登录 后发表内容