Vue如何實現iframe的上一步、下一步操作
iframe的上一步、下一步操作
背景
使用Element的Tabs組件嵌入多頁面,但是頁面中需要實現上一步、下一步功能,如圖:
實現
//父組件 var vm = new Vue({ el: "#app", data: { pages: [], index: 0, bmbiId: 0 }, methods: { goPageIndex(pageIndex) { this.index = pageIndex; } }, ... }); //在Vue實例外聲明方法 function goPageIndex(tab) { vm.goPageIndex(tab) } //子組件 <div style="text-align:center;margin:10px;"> <el-button type="primary" @@click="handleBack" size="mini">上一步</el-button> <el-button type="primary" @@click="handleNext" size="mini">下一步</el-button> </div> //上一步 handleBack() { window.parent.goPageIndex(1); }, //下一步 handleNext() { window.parent.goPageIndex(3); }
Vue使用iframe踩坑
需求
通過iframe寫epub閱讀器
由於src需要加密,所以在src拼接的時候直接調用函數獲取參數
BUG
每次頁面一動就會重新獲取加載一次iframe,導致頁面晃動
解決方案
把方法值賦值給變量,在src拼接中直接使用變量,而不是直接使用函數獲取
心得
動態加載的數據,一般賦值給變量,而不要直接調取方法獲取
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。