vuejs项目如何实现移动端适配,下面编程教程网小编给大家简单介绍2种适配方法!
方法一:利用lib-flexible插件
安装脚手架
npm i lib-flexible --save // 载lib-flexible
npm install px2rem-loader // 安装px2rem-loader
在main.js中引入lib-flexible
import 'lib-flexible/flexible'
移动适配meta标签,index.html
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
在build/util.js引入px2rem相关代码
const cssLoader = {
loader: 'css-loader',
options: {
minimize: process.env.NODE_ENV === 'production',
sourceMap: options.sourceMap
}
}
const px2remLoader = {
loader: 'px2rem-loader',
options: {
//一般设置75
remUnit: 35
}
}
function generateLoaders(loader, loaderOptions) {
const loaders = options.usePostCSS ? [cssLoader, postcssLoader,px2remLoader] : [cssLoader,px2remLoader]
if (loader) {
loaders.push({
loader: loader + '-loader',
options: Object.assign({}, loaderOptions, {
sourceMap: options.sourceMap
})
})
}
// Extract CSS when that option is specified
// (which is the case during production build)
if (options.extract) {
return ExtractTextPlugin.extract({
use: loaders,
fallback: 'vue-style-loader'
})
} else {
return ['vue-style-loader'].concat(loaders)
}
}
//1、lib-flexible:是 rem 的适配插件。(例:750px == 10rem)
//2、px2rem-loader :是为了方便在书写CSS时,输入 px 会 自动转为 rem。
//3、有时 用 ‘px2rem-loader ’ 插件,发现 rem 转换不正确。
方法二:利用rem布局
在index.html引入
<script>
(function () {
// 在标准 375px 适配下,100px = 1rem;
var baseFontSize = 100;
var baseWidth = 375;
var set = function () {
var clientWidth = document.documentElement.clientWidth || window.innerWidth;
var rem = 100;
if (clientWidth != baseWidth) {
rem = Math.floor(clientWidth / baseWidth * baseFontSize);
}
document.querySelector('html').style.fontSize = rem + 'px';
}
set();
window.addEventListener('resize', set);
}());
</script>
以上是编程学习网小编为您介绍的“vuejs项目如何实现移动端适配(2种方法介绍)”的全面内容,想了解更多关于 vuejs 内容,请继续关注编程基础学习网。
沃梦达教程
本文标题为:vuejs项目如何实现移动端适配(2种方法介绍)


猜你喜欢
- 全面解析Bootstrap中transition、affix的使用方法 2024-01-04
- JavaScript实现广告弹窗效果 2024-03-09
- layer.open()详细参数对照说明 2023-07-09
- echarts地图设置背景图片及海岸线实例代码 2023-12-24
- Ajax实现登录案例 2023-02-23
- JavaScript fetch接口案例解析 2024-01-16
- uniapp调用百度语音实现录音转文字功能 2023-08-12
- 重写 ajax 实现 session 超时跳转到登录页面实例代码 2023-02-01
- Vue中自动化引入样式及组件样式穿透 2023-10-08
- 灵活掌握asp.net中gridview控件的多种使用方法(上) 2023-12-02