Vue大屏數(shù)據(jù)展示示例
高效實(shí)現(xiàn)需求,避免臃腫的組件庫和重復(fù)造輪子,前段時(shí)間做了很多大屏展示類的項(xiàng)目,今天來跟大家分享一下,大屏的實(shí)踐過程,最開始我是使用了dataview 這個(gè)組件庫,然后發(fā)現(xiàn)是自己并不需要它太多的封裝好的組件,而且在移動(dòng)端,有樣式錯(cuò)亂的問題。所以自己看了他的實(shí)現(xiàn)方式,搞了一個(gè)大屏自適應(yīng)的組件。話不多說,直接上效果圖:
效果圖
需要適配所有尺寸的大型顯示屏,并且在手機(jī)上,可以縮放查看效果。我這里添加了這樣一段代碼,通過縮放body的大小,進(jìn)行等比例放大縮小,達(dá)到不變形,整體適配的效果。
<script> //頁面縮放公共 function resizePage() { // 獲取window的高度 var clientW = window.innerWidth var clientH = window.innerHeight // 初始window與body的比值 var bi = clientW / 1920 // 設(shè)置body的寬高-可根據(jù)實(shí)際情況進(jìn)行調(diào)節(jié) document.getElementsByTagName('body')[0].style.width = "1920px" document.getElementsByTagName('body')[0].style.height = "1080px" document.getElementsByTagName('body')[0].style.transform ='scale(' + bi + ',' + bi + ')' document.getElementsByTagName('body')[0].style.transformOrigin ='left top 0' } resizePage() // resizePage(); window.onresize = function () { setTimeout(()=>{ resizePage(); },200) } </script>
代碼實(shí)現(xiàn):
封裝一個(gè)適配的大的組件,可以設(shè)大屏的背景圖和整體效果。其他的基本都是使用的echart的組件庫,因沒有什么特別的定制的需求圖標(biāo)。所以也沒有做太多的個(gè)性化操作
<template> <div id="dv-full-screen-container"> <template > <slot></slot> </template> </div> </template> <script> export default { mounted(){ } } </script> <style lang="less"> #dv-full-screen-container { position: fixed; top: 0px; left: 0px; overflow: hidden; transform-origin: left top; z-index: 999; width:100%; height:1080pxee } </style>
<template> <div class="full"> <dv-full-screen-container ref="full"> content </dv-full-screen-container> </div> </template> <script> import fullScreenContainer from './fullscreen' export default { components:{ 'dv-full-screen-container':fullScreenContainer }, mounted(){ }, created(){ }, methods:{ } } </script> <style lang="less"> .full { #dv-full-screen-container { background:#000222 url(../assets/images/bg.png); background-size: 100% 100%; overflow: auto; .full-big-border { .content { padding: 0 38px 0 38px; width: calc(100% - 76px); display: flex; } } } } </style>
總結(jié):
以上就是自己實(shí)現(xiàn)大屏整體適配的效果和方法,一開始想偷懶,直接使用dataview 可以直接使用,但是可能在自己的需求的時(shí)候,難以達(dá)到,或則想的是安裝一套太臃腫的組件庫,難以扶平自己的強(qiáng)迫癥。希望大家有更好的封裝方法,我這只是實(shí)現(xiàn)一點(diǎn)皮毛,希望對剛?cè)腴T的同學(xué)有所幫助。
到此這篇關(guān)于Vue大屏數(shù)據(jù)展示示例的文章就介紹到這了,更多相關(guān)Vue大屏數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue項(xiàng)目使用axios發(fā)送請求讓ajax請求頭部攜帶cookie的方法
今天小編就為大家分享一篇vue項(xiàng)目使用axios發(fā)送請求讓ajax請求頭部攜帶cookie的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09vue 實(shí)現(xiàn)邊輸入邊搜索功能的實(shí)例講解
今天小編就為大家分享一篇vue 實(shí)現(xiàn)邊輸入邊搜索功能的實(shí)例講解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09vue路由篇之router-view內(nèi)容無法渲染出來問題
這篇文章主要介紹了vue路由篇之router-view內(nèi)容無法渲染出來問題及解決,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04基于Vue+ElementUI的省市區(qū)地址選擇通用組件
這篇文章主要介紹了基于Vue+ElementUI的省市區(qū)地址選擇通用組件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11vue3使用element-plus搭建后臺(tái)管理系統(tǒng)之菜單管理功能
這篇文章主要介紹了vue3使用element-plus搭建后臺(tái)管理系統(tǒng)之菜單管理,使用element-plus el-tree組件快速開發(fā)樹形菜單結(jié)構(gòu),el-tree組件中filter-node-method事件便可以實(shí)現(xiàn)樹形菜單篩選過濾功能,需要的朋友可以參考下2022-04-04vue3+ant?design的form數(shù)組表單校驗(yàn)方法
這篇文章主要介紹了vue3+ant?design的form數(shù)組表單,如何校驗(yàn),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-09-09vue實(shí)現(xiàn)導(dǎo)入json解析成動(dòng)態(tài)el-table樹表格
本文主要介紹了vue實(shí)現(xiàn)導(dǎo)入json解析成動(dòng)態(tài)el-table樹表格,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02在vue項(xiàng)目中引入scss并使用scss樣式詳解
SCSS是一種CSS預(yù)處理語言,定義了一種新的專門的編程語言,編譯后形成正常的css文件,為css增加一些編程特性,這篇文章主要給大家介紹了關(guān)于在vue項(xiàng)目中引入scss并使用scss樣式的相關(guān)資料,需要的朋友可以參考下2022-07-07