vue px2rem

第一步:

安裝 lib-flexible,並在main.js中引入

npm i lib-flexible --save
import 'lib-flexible/flexible'

第二步:

刪除 index.html 的 meta 標籤

刪除

<meta name="viewport" content="width=device-width, initial-scale=1.0"> 

否則會出現固定值的情況。

第三步:

安裝 px2rem-loader

npm install px2rem-loader

第四步:

在build文件中找到util.js,將px2rem-loader添加到cssLoaders中,如:

exports.cssLoaders = function (options) {
  options = options || {}

  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
    }
  }

...

}

 

同時,在generateLoaders方法中添加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)
    }
  }

第五步:

重啓服務~

npm run dev

*如果有需要忽略、不用轉換的地方,用大寫的PX作爲單位即可。

參考文章:

1. https://blog.csdn.net/u013040887/article/details/79524549

2. https://www.jianshu.com/p/a0fe0604209a

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章