这是我公司项目,需求:使用vue-cli2.9+px2rem实现响应式布局
废话少说,直接上例子吧! 第一步:命令行安装 lib-flexible
npm install lib-flexible --save第二步:在 项目main.js中导入
import 'lib-flexible'第三步:在项目index.html中加入如下代码
<meta name="viewport" content="width=device-width, initial-scale=1.0">我用webstorm开发,脚手架生成的项目自带这行代码
第四步:命令行安装px2rem-loader
npm install px2rem-loader --save-dev第五步:需要配置px2rem-loader 在项目build文件夹里,找到utils.js文件夹,把px2remLoader写入
const cssLoader = { loader: 'css-loader', options: { sourceMap: options.sourceMap } } const postcssLoader = { loader: 'postcss-loader', options: { sourceMap: options.sourceMap } } const px2remLoader = { loader: 'px2rem-loader', options: { remUnit: 75 } }第六步:接着还是配置px2remLoader,再找到以下代码
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) } }不用看代码长,直接把这行代码直接复制过来,原来的那行代码注释就可以了,这是对第六步的说明
const loaders = options.usePostCSS ? [cssLoader,postcssLoader,px2remLoader] : [cssLoader,px2remLoader]最后,项目需要重新启动:npm run dev 就OK了