本文摘自PHP中文网,作者coldplay.xixi,侵删。
vue.js实现移动端适配的方法:1、使用rem布局,在主入口【index.html】,【<head>】标签内添加相关JS代码;2、使用【lib-flexible】插件实现。

本教程操作环境:windows7系统、vue2.9版,该方法适用于所有品牌电脑。
【相关文章推荐:vue.js】
vue.js实现移动端适配的方法:
一、方法一:rem 布局
在主入口:index.html,<head> 标签内添加如下JS 代码:(实现在标准 375px宽度适配下,100px = 1rem。)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <script>
(function () {
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>
|
二、方法二:lib-flexible 插件实现
1、安装插件
1 2 | npm i lib-flexible --save
npm install px2rem-loader
|
2、在main.js中引入lib-flexible
1 | import 'lib-flexible/flexible'
|
3、在 index.html 中添加:移动适配 meta标签
1 2 3 | <meta name="viewport" content="width=device-width,initial-scale=1.0">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
4、更改配置
在 build/util.js 中 按如下两更改
(1)、将px2rem-loader添加到cssLoaders中
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | const cssLoader = {
loader: 'css-loader',
options: {
minimize: process.env.NODE_ENV === 'production',
sourceMap: options.sourceMap
}
}
const px2remLoader = {
loader: 'px2rem-loader',
options: {
remUnit: 35
}
}
|
(2)、在generateLoaders方法中添加px2remLoader
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | 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
})
})
}
if (options.extract) {
return ExtractTextPlugin.extract({
use: loaders,
fallback: 'vue-style-loader'
})
} else {
return ['vue-style-loader'].concat(loaders)
}
}
|
总结要修改的地方

5、重启
npm run dev // 重新运行
这里需要注意:
1、 lib-flexible:是 rem 的适配插件。(例:750px == 10rem)
2、px2rem-loader :是为了方便在书写CSS时,输入 px 会 自动转为 rem。
3、有时 用 ‘px2rem-loader ’ 插件,发现 rem 转换不正确。可能是开发工具设置了其他的插件转换,将其他的插件转换设置为想要的转换就行。【我就遇到过,巨坑。。。】
相关免费学习推荐:JavaScript(视频)
以上就是vue.js怎么实现移动端适配的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
彻底理解css中视觉格式化模型(附示例)
如何知道vue.js的版本号
vue cli3引入bootstrap的方法介绍
一文带你看看vue router4中的酷炫功能
vue.js的优点是什么
vue.js怎么用swiper
vue刷新404的问题解决方法
如何卸载vue.js
vue 的 render 方法中 h 是什么?
为什么使用vue.js
更多相关阅读请进入《vue.js》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » vue.js怎么实现移动端适配