Vue中使用Echarts响应式布局flexible.js+rem适配方案详解

 更新时间:2023年01月07日 11:04:51   作者:酷尔。  
这篇文章主要介绍了Vue中使用Echarts响应式布局flexible.js+rem适配方案详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

一、vue集成flexible方案

先介绍几个基本的概念

  • px像素(Pixel)。相对长度单位。像素px是相对于显示器屏幕分辨率而言的。
  • em是相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。
  • rem是CSS3新增的一个相对单位(root em,根em)

在进行网页设计的时候由于屏幕大小并不是一定的,所以需要考虑到许多尺寸方面的因素,以上三种单位均是常会用到的单位,对他们有一定理解后可以使我们设计出来的网页组件与组件之间契合度更高,展示出来更好看。关于这三种尺寸我就不过多介绍了大家可以去菜鸟教程上查阅传送门

第一种:在编译的时候自动转换(px2rem-loader)

这种方法大概的操作是这样的:

①安装flexible.js

npm install lib-flexible --save

②安装px2rem-loader

npm install px2rem-loader --save-dev

③配置px2rem-loader

将以下代码放在build/utils.js中

exports.cssLoaders = function (options) {
  options = options || {}
  const cssLoader = {
    loader: 'css-loader',
    options: {
      sourceMap: options.sourceMap,
      importLoaders:15
    }
  }
//增加代码,px转rem配置
const px2remLoader = {
      loader: 'px2rem-loader',
      options: {
          //每一rem大小为72px
          remUnit: 72 //根据视觉稿,rem为px的十分之一,720宽度px 72rem
      }
}
function generateLoaders(loader, loaderOptions) {
    var loaders = [cssLoader, px2remLoader]
}

大概流程就是这样的,在这里介绍的还是比较含糊的,如果大家需要用到这种方案可以在网上进一步进行检索,今天主要介绍的是第二种cssrem插件。

第二种:直接在写css样式的时候转换(cssrem)

这种方案只需安装上插件,在写代码的时候就可以直接进行转换;当然使用之前也需要进行简单的配置,否则会出一些意想不到的错误。安装及配置插件往下看

这种方法使用于vscode,对于webstorm等集成开发环境我并不确定有没有。

二、安装&配置lib-flexible.js

flexible.js是淘宝开发出的一个用来适配移动端的js框架。淘宝框架的核心原理就是根据制不同的width给网页中html根节点设置不同的font-size,然后所有的px都用rem来代替,这样就实现了不同大小的屏幕都适应相同的样式了。其实它就是一个终端设备适配的解决方案,也就是说它可以让你在不同的终端设备中实现页面适配。页面内的组件大小会随着窗口的大小进行改变。

安装flexible

npm install lib-flexible --save

配置flexible

找到vue-cli路径node_modules/lib-flexible/flexible.js,然后修改rem换算单位

这里的是一个计量单位(咱们会将1rem=80px为换算单位)

所以这里的/10要改为/24,因为24*80px=1920px,大家可以根据自己的需要进行划分

至此,flexible.js已经配置好了,只需要在写css的时候将px换为rem为单位即可。接下里就配置cssrem,通俗的来说cssrem有点像物理外挂,hhhh。

安装cssrem之前先看看效果图,下面的测试是有css样式边框的,从边框的改变可以看出dom元素确实是进行了适配。

效果图(全屏):

三、安装插件cssrem

cssrem全称 :px to rem & rpx & vw (cssrem)不过在vscode插件商店搜索cssrem还是可以找到它的,安装之后稍微进行一下配置,按照下面步骤来就好了:

①安装

②计量单位统一

大工告成!!!

至此就可以很方便的进行屏幕适配了。如果有不懂的地方或者有更好的想法欢迎评论区留言。

接下来就使用vue对pink老师大屏可视化项目进行复现。

到此这篇关于Vue中使用Echarts响应式布局flexible.js+rem适配方案详解的文章就介绍到这了,更多相关Vue flexible.js+rem适配内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue拖拽改变宽度的实现示例

    vue拖拽改变宽度的实现示例

    本文主要介绍了vue拖拽改变宽度的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Vue中ref和$refs的介绍以及使用方法示例

    Vue中ref和$refs的介绍以及使用方法示例

    这篇文章主要给大家介绍了关于Vue中ref和$refs使用方法的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • vue实现下拉加载其实没那么复杂

    vue实现下拉加载其实没那么复杂

    这篇文章主要给大家介绍了关于vue实现下拉加载的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用vue具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • vue如何实现本项目页面之间跳转

    vue如何实现本项目页面之间跳转

    这篇文章主要介绍了vue如何实现本项目页面之间跳转,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • Vue登录功能实现全套详解(含封装axios)

    Vue登录功能实现全套详解(含封装axios)

    登录功能对于前端刚入门不久的同学来说较为困难,下面这篇文章主要给大家介绍了关于Vue登录功能实现(含封装axios)的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

    Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

    这篇文章主要介绍了Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • Vue组件开发之异步组件详解

    Vue组件开发之异步组件详解

    这篇文章主要为大家详细介绍了Vue组件开发之异步组件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • 谈谈我在vue-cli3中用预渲染遇到的坑

    谈谈我在vue-cli3中用预渲染遇到的坑

    这篇文章主要介绍了谈谈我在vue-cli3中用预渲染遇到的坑,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • vue中window.onresize的使用解析

    vue中window.onresize的使用解析

    这篇文章主要介绍了vue中window.onresize的使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vue3  mixin 混入使用方法

    vue3  mixin 混入使用方法

    这篇文章主要介绍了 vue3  mixin 混入使用方法,mixin 混入,提供了一种非常灵活的方式,来分发 vue 组件中的可复用功能,一个mixin 对象可以包含任意组件选项,当组件使用 mixin 对象时,所有的 mixin 对象的选项将被混入组件本身的选项。,需要的朋友可以参考一下
    2021-11-11

最新评论