Vue監聽螢幕寬度實現響應式

2021-09-27 00:05:54 字數 792 閱讀 8827

今天在做頁面的時候突然想搞乙個能在手機端也能完美顯示的網頁,這就意味著要做響應式,也就是要監聽網頁的寬度。

用vue-cli搭建好專案後

setmobile())

}

然後使用

document.documentelement.clientwidth || document.body.clientheight;
來獲取當前螢幕的寬度。

因為這個監聽所有頁面都能適用,所有引入了vuex,關於vuex的介紹不多贅述,他能在非父子,兄弟節點中傳遞資料。

簡歷store.js,匯入vuex,宣告乙個資料

state:,
最後可以在頁面中使用this.$store.state.ismobile方法來獲取是否為手機頁面,使用方法例如:要在手機端隱藏某些元件

是這個元件是否顯示的乙個資料

//this.$store.state.ismobile是獲取的螢幕是否為手機頁面的資料

//當他為true時這個元件就能顯示

//當他為false時這個元件就能顯示

完整**

getscreen()else

},setmobile())

}

store.js

export default new vuex.store(,

mutations:

}})

手機,平板,電腦,超大螢幕 寬度響應式

關於 media 查詢屬性包含很多知識點,這裡舉個寬度響應式的例子,可以滿足各大螢幕尺寸的布局需要。這裡需要說明一點 響應式的含義 響應式說白了,就是在不同的媒介條件下採用不同的css樣式來進行適應各種條件的需要 這裡僅僅是個人的理解,有誤請不要採納。例子的html 超小螢幕 手機端平板電腦 pc端...

vue響應式布局 Vue 響應式原理

vue2 的資料偵測 在 src observer 目錄裡面,元件例項在初始化時,會呼叫 observe 函式處理 data function initdata vm observe 改寫了所有物件屬性的 getter setter 和陣列原型上的 7 個會改寫陣列方法,從而讓 data 變成可響應...

vue的響應式實現原理

vue2.0的雙向資料繫結主要實現方式就是 發布訂閱 資料劫持 這裡來手寫乙個實現過程,發布訂閱 資料劫持 訂閱器模型 let dep 為何不是陣列?深拷貝與淺拷貝,使用陣列需要key來進行查值 新增訂閱者 listen function key,fn 發布訊息 trigger function v...