页面一加载 mounted和watch怎么才能只执行一次

因为用到的是echarts,所以渲染数据需要放在mounted里,但是请求数据需要id,我需要实时监听id的变化来渲染图表,所以需要同时用到mounted和watch来调用getInfo()函数。就导致了图表加载两次的效果,有想过直接watch不mounted但是如果id没数据一直没变一开始就不会执行getInfo函数了,watch加immediate也不行,因为一加这个就在created里执行获取不到DOM渲染失败。
怎么做才能实现第一次加载只执行一次getInfo()函数

mounted是进入页面调用一次,而此时watch应该不会执行额,不要加immediate,页面加载完毕此时id变了,watch开始执行,而mounted不会执行了

如果这个id是一直变化的话,那么一开始会有个默认值,或者echarts有个加载中
如果不变的话,直接存在store,不要传,取的时候在huangfuyk store取

还有 你都说了 id 一开始是空的,那么你在watch或者mounted判断,如1楼说的一样,空值就不请求,watch监听oldval是空 就不请求,1楼说的没毛病啊

加判断,前后id对比,如果一致或id没有值就什么都不做呗