vue移动端适配插件lib-flexible

简介: 使用vue-cli安装好一个vue的项目npm install -g vue-clivue init webpack my-projectcd my-projectnpm run dev配置vue插件 lib-flexible安装插件 lib-flexiblenpm i lib-flexible --save在main.

使用vue-cli安装好一个vue的项目

  1. npm install -g vue-cli
  2. vue init webpack my-project
  3. cd my-project
  4. npm run dev

配置vue插件 lib-flexible

  1. 安装插件 lib-flexible
npm i lib-flexible --save
  1. 在main.js中引入lib-flexible
import 'lib-flexible/flexible'
  1. 安装px2rem loader
npm install px2rem-loader
  1. 配置px2rem-loader
    在build文件中找到util.js,将px2rem-loader添加到cssLoaders中,如:
const cssLoader = {
    loader: 'css-loader',
    options: {
      minimize: process.env.NODE_ENV === 'production',
      sourceMap: options.sourceMap
    }
  }
  const px2remLoader = {
    loader: 'px2rem-loader',
    options: {
      remUnit: 75
    }
  }

同时,在generateLoaders方法中添加px2remLoader

function generateLoaders (loader, loaderOptions) {
    const loaders = [cssLoader,px2remLoader]
    if (loader) {
      loaders.push({
        loader: loader + '-loader',
        options: Object.assign({}, loaderOptions, {
          sourceMap: options.sourceMap
        })
      })
    }
  1. 在vue的项目的根目录中打开 /src/HelloWorld.vue 文件,把template里面的东西全干掉,写上以下这些代码:
<template>
  <div class="hello">
    适配移动端
  </div>
</template>

<script>
export default {
  name: 'HelloWorld',
  data () {
    return {
      msg: 'Welcome to Your Vue.js App'
    }
  }
}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
.hello {
  width: 200px;
  height: 200px;
  font-size: 36px;
  margin: 0 auto;
  box-sizing: border-box;
  border: 1px solid green;
}
</style>

在这里,我们设置了一个div的宽度是200px,接下来我们来查看div在不同分辨率手机下显示的情况
iPhone6(屏幕宽度为375px)


img_8c27c0c75f62eab640df6c9640556d37.png
image.png

iPhone6px(屏幕宽度为414px)


img_fefb60dc88f291725be14439eb805c93.png
image.png

iPhone5
img_f112a5fa235f209f5d4e936137becea6.png
image.png

结论

1.使用了vue的lib-flexible后,给div设置了一个宽度,它会跟手机分辨率大小自动调节

  1. 当设置手机屏幕大小为375时,它的宽度是100px,说明设计稿是按照750px来设计的,375刚好是一半
目录
相关文章
|
1天前
|
JavaScript 前端开发
Vue项目使用px2rem
Vue项目使用px2rem
|
1天前
|
JavaScript 前端开发
vue动态添加style样式
vue动态添加style样式
|
1天前
|
JavaScript
vue中watch的用法
vue中watch的用法
|
5天前
|
JavaScript 前端开发
Vue项目使用px2rem
Vue项目使用px2rem
|
6天前
|
缓存 JavaScript
vue学习(12)计算属性
vue学习(12)计算属性
15 3
|
6天前
|
JavaScript
vue学习(10)事件修饰符
vue学习(10)事件修饰符
23 3
|
6天前
|
缓存 JavaScript
vue学习(12)计算属性
vue学习(12)计算属性
19 2
|
6天前
|
JavaScript
vue学习(11)键盘事件
vue学习(11)键盘事件
24 2
|
5天前
|
JavaScript
Vue组件传值异步问题--子组件拿到数据较慢
Vue组件传值异步问题--子组件拿到数据较慢
9 0
|
5天前
|
缓存 JavaScript
Vue中的keep-alive是什么意思?以及如何使用
Vue中的keep-alive是什么意思?以及如何使用