songsiqi / px2rem-postcss

Postcss version of px2rem.
270 stars 49 forks source link

postcss-loader如果sourceMap:true的话,/*px*/、/*no*/注释无效 #12

Closed 66beta closed 7 years ago

66beta commented 7 years ago

vue-cli bulid/utils.js

  /* ... */
  var cssLoader = {
    loader: 'css-loader',
    options: {
      minimize: process.env.NODE_ENV === 'production',
      sourceMap: options.sourceMap
    }
  },
  postcssLoader = {
    loader: 'postcss-loader',
    options: {
      sourceMap: false /*设为false才有效*/
    }
  }

  // generate loader string to be used with extract text plugin
  function generateLoaders (loader, loaderOptions) {
    var loaders = [cssLoader, postcssLoader]
    if (loader) {
      loaders.push({
        loader: loader + '-loader',
        options: Object.assign({}, loaderOptions, {
          sourceMap: options.sourceMap
        })
      })
    }
/* ... */

.postcsssrcjs

module.exports = {
  "plugins": {
    'postcss-px2rem': {remUnit: 75},
    'postcss-cssnext': {}
  }
}

插件是生效了的

[data-dpr="2"] .header-title {
    font-size: 0.48rem;
}

border-bottom: 0.013333rem solid rgba(95, 96, 108, .2);

如果sourceMap改成false的话就正常了

[data-dpr="2"] .header-title {
    font-size: 36px;
}

border-bottom: 1px solid rgba(95, 96, 108, .2);

不知道为什么,望解答

66beta commented 7 years ago

css-loader添加importLoaders解决了

var cssLoader = {
    loader: 'css-loader?importLoaders=1',