這周公司的有一個項目需求,需要寫一個全局函數給客戶端調用,通過客戶端傳數據渲染到頁面;
通過jsBridge方法,H5可以調用客戶端(ios,android)的內部方法,同樣,客戶端也需要能調用H5頁面里定義的js方法。
但是在vue里,所有的方法都是在組件內部聲明的,也只能在組件內部調用。在網上找到下面的方法。。。
mounted() { // 將h5RenderData方法綁定到window下面,提供給外部調用 window['h5EditorRenderData'] = data => { this.h5RenderData(data); } }, methods: { h5RenderData(data) { // 更改渲染頁面的數據 } }
該方法是有效的。但遇到一個問題,修改后的數據並未重新渲染到頁面,最后通過this.$nextTick成功的渲染了頁面。
