在vue中嵌入外部網(wǎng)站的實(shí)現(xiàn)
利用iframe
top:導(dǎo)航欄的height
left:左側(cè)菜單欄的width
src:右側(cè)頁面要嵌入的外部網(wǎng)站
<template>
<div>
<iframe src="https://www.iconfont.cn/" id="mobsf" scrolling="no" frameborder="0" style="position:absolute;top:64px;left: 240px;right:0px;bottom:100px;"></iframe>
</div>
</template>
<script>
export default {
data () {
return {
}
},
mounted(){
/**
* iframe-寬高自適應(yīng)顯示
*/
function changeMobsfIframe(){
const mobsf = document.getElementById('mobsf');
const deviceWidth = document.body.clientWidth;
const deviceHeight = document.body.clientHeight;
mobsf.style.width = (Number(deviceWidth)-240) + 'px'; //數(shù)字是頁面布局寬度差值
mobsf.style.height = (Number(deviceHeight)-64) + 'px'; //數(shù)字是頁面布局高度差
}
changeMobsfIframe()
window.onresize = function(){
changeMobsfIframe()
}
}
}
</script>

補(bǔ)充知識(shí):導(dǎo)航鉤子有哪幾種,如何將數(shù)據(jù)傳入下一個(gè)點(diǎn)擊的路由頁面
1.全局導(dǎo)航守衛(wèi)
//前置鉤子
router.beforeEach((to,from,next)=>{
//do something
})
//后置鉤子(沒有next參數(shù))
router.afterEach((to, from)=>{
// do something
})
2.路由獨(dú)享守衛(wèi)
const router = new VueRouter({
routes: [
{
path: '/file',
component: File,
beforeEnter: (to, from, next)=>{
//do something
}
}
]
})
3.組件內(nèi)的導(dǎo)航鉤子
組件內(nèi)的導(dǎo)航鉤子主要有三種,beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave。它們是直接在路由組件內(nèi)部直接進(jìn)行定義的
data(){
return{
pro:'產(chǎn)品'
}
},
beforeRouteEnter:(to,from,next)=>{
console.log(to)
next(vm => {
console.log(vm.pro)
})
}
注意:beforeRouteEnter不能獲取組件實(shí)例this,因?yàn)楫?dāng)守衛(wèi)執(zhí)行前,組件實(shí)例還沒被創(chuàng)建出來,我們可以通過給next傳入一個(gè)回調(diào)來訪問組件實(shí)例,在導(dǎo)航被確認(rèn)時(shí),會(huì)執(zhí)行這個(gè)回調(diào),這時(shí)就可以訪問組件實(shí)例了。
僅僅是beforeRouterEnter支持給next傳遞回調(diào),其他兩個(gè)并不支持,因?yàn)槭O聝蓚€(gè)鉤子可以正常獲取組件實(shí)例this。
4.params和query
params傳參
this.$router.push({
name: 'detail',
params: {
name: 'xiaoming'
}
});
//接收
this.$route.params.name
query
this.$router.push({
path: '/detail',
query:{
name: 'xiaoming'
}
});
//接收
this.$route.query.id
query和params的區(qū)別
params只能用name來引入路由,query既可以用name又可以用path(通常是path)
params類似于post方法,參數(shù)不會(huì)在地址欄中顯示
query類似于get,頁面跳轉(zhuǎn)的時(shí)候,可以在地址欄看到參數(shù)
補(bǔ)充:
router為VueRouter實(shí)例,想要導(dǎo)航到不同url,則使用router.push方法
$route為當(dāng)前router跳轉(zhuǎn)對(duì)象,在里邊獲取name,path,query,params等數(shù)據(jù)
以上這篇在vue中嵌入外部網(wǎng)站的實(shí)現(xiàn)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
讓webpack+vue-cil項(xiàng)目不再自動(dòng)打開瀏覽器的方法
今天小編就為大家分享一篇讓webpack+vue-cil項(xiàng)目不再自動(dòng)打開瀏覽器的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-09-09
如何利用SpringBoot與Vue3構(gòu)建前后端分離項(xiàng)目
在當(dāng)前的互聯(lián)網(wǎng)時(shí)代,前后端分離架構(gòu)已經(jīng)成為構(gòu)建應(yīng)用系統(tǒng)的主流方式,本文將詳細(xì)介紹如何利用 SpringBoot 與 Vue3 構(gòu)建一個(gè)前后端分離的項(xiàng)目,感興趣的小伙伴可以了解下2025-04-04
詳解關(guān)于vue2.0工程發(fā)布上線操作步驟
這篇文章主要介紹了詳解關(guān)于vue2.0工程發(fā)布上線操作步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-09-09
vue項(xiàng)目搭建以及全家桶的使用詳細(xì)教程(小結(jié))
這篇文章主要介紹了vue項(xiàng)目搭建以及全家桶的使用詳細(xì)教程(小結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-12-12
vue+axios 前端實(shí)現(xiàn)的常用攔截的代碼示例
這篇文章主要介紹了vue+axios 前端實(shí)現(xiàn)的常用攔截的代碼示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08
vue2?element-ui?el-checkbox視圖不更新問題及解決
作者在開發(fā)過程中遇到了視圖不更新的問題,最終通過改變一個(gè)無關(guān)緊要的響應(yīng)式數(shù)據(jù)來解決,讓視圖發(fā)生改變2024-12-12
Vue3實(shí)現(xiàn)Message消息組件示例
在大多數(shù) web 產(chǎn)品中,全局的 Message 組件占有較大的使用場景,本文主要介紹了Vue3實(shí)現(xiàn)Message消息組件示例,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-06-06

