最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue-cli中實(shí)現(xiàn)響應(yīng)式布局的方法

 更新時間:2021年03月02日 09:48:33   作者:我叫胡八一  
這篇文章主要介紹了vue-cli中實(shí)現(xiàn)響應(yīng)式布局的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

我們在進(jìn)行前端開發(fā)中必然會遇到PC與移動端的適配,面對這樣的問題有些公司會準(zhǔn)備兩個頁面,移動是移動,PC是PC,而響應(yīng)式布局就是根據(jù)用戶不同的機(jī)型展示不同的頁面,廢話不多說,直接貼代碼

首先我們這個功能是借助vuex實(shí)現(xiàn)的,沒下載的小伙伴可以先下一個

yarn add vuex

既然是響應(yīng)式布局就要準(zhǔn)備兩套css,一個是PC端的css,一個是移動端的css,我們暫且將PC端的樣式稱為computer,移動端的樣式稱為mobile

我們首先要做的就是當(dāng)前屏幕的寬度

state: {
  screenWidth: document.documentElement.clientWidth,
  screenHeight: document.documentElement.clientHeight
 }

這是vuex的state,我們后續(xù)還要實(shí)時監(jiān)控屏幕寬度,所以還需要提供一個改變screenWidth的方法,于是我又寫了一mutations

mutations: {
  setWidth (state, value) {
   state.screenWidth = value
  },
  setHeight (state, value) {
   state.screenHeight = value
  }
 }

這樣我們的vuex的文件就寫好了,而后就是APP.vue,我們需要在這個文件下添加一個window.onresize事件實(shí)時更新vuex中的screenWidth值,在這里我們使用了輔助函數(shù)

import { mapState, mapMutations } from 'vuex'

在mounted鉤子函數(shù)中添加事件

mounted () {
  window.onresize = () => { 
   this.setWidth(document.documentElement.clientWidth) 
  }
}

這樣好比說我們網(wǎng)頁中的導(dǎo)航,移動端時我們需要它在底部,PC端時我們需要它在頂部,這樣我們就可以在nav.vue這個組件中用watch或computed監(jiān)聽screenWidth的值,這里我們用的是computed

<ul :class="computedPhone">//根據(jù)screenWidth提供不同的class名
   <router-link to='/file' tag="li" active-class="active">電影</router-link>
   <router-link to='/cinma' tag="li" active-class="active">影院</router-link>
   <router-link to='/center' tag="li" active-class="active">個人中心</router-link>
</ul>

computed: {
  ...mapState('stylesheet', ['screenWidth']),
  computedPhone () {
   if (this.screenWidth < 1024) {
    return 'mobile'
   } else {
    return 'computer'
   }
  }
 }

這樣只要寫好兩套css就可以實(shí)現(xiàn)響應(yīng)式布局了

到此這篇關(guān)于vue-cli中實(shí)現(xiàn)響應(yīng)式布局的方法的文章就介紹到這了,更多相關(guān)vue-cli 響應(yīng)式布局內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解vue-cli3 中跨域解決方案

    詳解vue-cli3 中跨域解決方案

    這篇文章主要介紹了vue-cli3 中跨域解決方案,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-04-04
  • 同步cookie插件原理及實(shí)現(xiàn)示例

    同步cookie插件原理及實(shí)現(xiàn)示例

    這篇文章主要為大家介紹了同步cookie插件原理及實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • vue 授權(quán)獲取微信openId操作

    vue 授權(quán)獲取微信openId操作

    這篇文章主要介紹了vue 授權(quán)獲取微信openId操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • axios異步提交表單數(shù)據(jù)的幾種方法

    axios異步提交表單數(shù)據(jù)的幾種方法

    這篇文章主要給大家介紹了關(guān)于axios異步提交表單數(shù)據(jù)的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對各位大家學(xué)習(xí)或者使用axios具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • vue實(shí)現(xiàn)tab切換的3種方式及切換保持?jǐn)?shù)據(jù)狀態(tài)

    vue實(shí)現(xiàn)tab切換的3種方式及切換保持?jǐn)?shù)據(jù)狀態(tài)

    這篇文章主要給大家介紹了關(guān)于vue實(shí)現(xiàn)tab切換的3種方式及切換保持?jǐn)?shù)據(jù)狀態(tài)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • Vue+Element UI 樹形控件整合下拉功能菜單(tree + dropdown +input)

    Vue+Element UI 樹形控件整合下拉功能菜單(tree + dropdown +input)

    這篇文章主要介紹了Vue+Element UI 樹形控件整合下拉功能菜單(tree + dropdown +input)的方法,幫助大家更好的理解和學(xué)習(xí)vue,感興趣的朋友可以了解下
    2020-08-08
  • 深入理解Vue.js輕量高效的前端組件化方案

    深入理解Vue.js輕量高效的前端組件化方案

    這篇文章主要介紹了深入理解Vue.js輕量高效的前端組件化方案 ,需要的朋友可以參考下
    2018-12-12
  • VUE3之Non-Props屬性的具體使用

    VUE3之Non-Props屬性的具體使用

    本文主要介紹了VUE3之Non-Props屬性的具體使用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • vue獲取驗(yàn)證碼倒計(jì)時組件

    vue獲取驗(yàn)證碼倒計(jì)時組件

    這篇文章主要為大家詳細(xì)介紹了vue獲取驗(yàn)證碼倒計(jì)時組件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • vue安裝和使用scss及sass與scss的區(qū)別詳解

    vue安裝和使用scss及sass與scss的區(qū)別詳解

    這篇文章主要介紹了vue安裝和使用教程,用了很久css預(yù)編譯器,但是一直不太清楚到底用的sass還是scss,直到有天被問住了有點(diǎn)尷尬,感興趣的朋友一起看看吧
    2018-10-10

最新評論

龙口市| 平武县| 平塘县| 大宁县| 嘉禾县| 临漳县| 汕尾市| 手游| 定结县| 玛多县| 万安县| 黎平县| 永州市| 兴业县| 买车| 旺苍县| 哈尔滨市| 邯郸市| 都匀市| 沾益县| 无棣县| 甘洛县| 沽源县| 静宁县| 洛宁县| 南溪县| 四子王旗| 凤山县| 三门县| 杨浦区| 萝北县| 即墨市| 卢湾区| 许昌县| 黑河市| 寿阳县| 墨玉县| 昌宁县| 磐安县| 尼勒克县| 金川县|