怎么在methods里调用mounted里的方法?

新手上路,请多包涵

我在mounted里新建了个高德地图,我怎么在methods里的函数中调取这个map,然后改变地图显示的中点,就是new 一个center值。

阅读 13.2k
5 个回答

试试?

export default {
    data() {
        return {
            map: null
        }
    },
    
    mounted() {
        this.map = new AMap.Map(xxxxx)
    }
}

在mouted里面弄一个函数把map传到method里面方法里面。然后拿着你的map来new

mounted是生命周期方法之一,会在对应生命周期时执行。
methods是绑定方法到Vue实例对象上,供当前Vue组件作用域内通过上下文this使用,未调用不会执行。

题主只需要将mounted中定义的函数写为methods中的一个方法(例如map: function(){}),即可通过当前组件上下文调用,即mountedmethods中的this(例如this.map())。

你搞错了,方法写在methods里头,在生命周期mouted里调用你定义在methods的方法。

1.写一个hidden的按钮
<button id="refresh_regions" ref="refresh_regions" style='visibility: hidden'>测试</button>
2.给他绑定一下事件
document.getElementById('refresh_regions').addEventListener('click',_via_redraw_reg_canvas)
3.需要调用时,在methods的function手动触发这个ref的click()
this.$refs.refresh_regions.click();

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题