diff --git a/packages/postcss-pxtransform/__tests__/index.test.js b/packages/postcss-pxtransform/__tests__/index.test.js index 5b1c7e7ea563..c01e5c7ad8dc 100644 --- a/packages/postcss-pxtransform/__tests__/index.test.js +++ b/packages/postcss-pxtransform/__tests__/index.test.js @@ -72,6 +72,13 @@ describe('px2rem', function () { expect(processed).toBe(expected) }) + + it('8 should work on custom baseFontSize', function () { + const processed = postcss(px2rem({ platform: 'h5', baseFontSize: 15 })).process(basicCSS).css + const expected = '.rule { font-size: 0.5rem }' + + expect(processed).toBe(expected) + }) }) describe('value parsing', function () { diff --git a/packages/postcss-pxtransform/index.js b/packages/postcss-pxtransform/index.js index 417c73c0ff53..b9e95e5e5dcd 100644 --- a/packages/postcss-pxtransform/index.js +++ b/packages/postcss-pxtransform/index.js @@ -41,7 +41,7 @@ module.exports = postcss.plugin('postcss-pxtransform', function (options = {}) { options = Object.assign({}, DEFAULT_WEAPP_OPTIONS, options) const transUnits = ['px'] - const baseFontSize = options.baseFontSize || options.minRootSize >= 1 ? options.minRootSize : 20 + const baseFontSize = options.baseFontSize || (options.minRootSize >= 1 ? options.minRootSize : 20) const designWidth = input => typeof options.designWidth === 'function' ? options.designWidth(input) : options.designWidth diff --git a/packages/taro-webpack-runner/src/util/index.ts b/packages/taro-webpack-runner/src/util/index.ts index 35e7e980c24d..798f6a4bf64a 100644 --- a/packages/taro-webpack-runner/src/util/index.ts +++ b/packages/taro-webpack-runner/src/util/index.ts @@ -48,7 +48,7 @@ export function parseHtmlScript (pxtransformOption: IPostcssOption['pxtransform' const options = pxtransformOption?.config || {} const max = options?.maxRootSize ?? 40 const min = options?.minRootSize ?? 20 - const baseFontSize = options?.baseFontSize || min > 1 ? min : 20 + const baseFontSize = options?.baseFontSize || (min > 1 ? min : 20) const designWidth = (input => typeof options.designWidth === 'function' ? options.designWidth(input) : options.designWidth)(baseFontSize) diff --git a/packages/taro-webpack5-runner/src/webpack/H5WebpackPlugin.ts b/packages/taro-webpack5-runner/src/webpack/H5WebpackPlugin.ts index 5cf7595400f3..3d2cfff7ff0b 100644 --- a/packages/taro-webpack5-runner/src/webpack/H5WebpackPlugin.ts +++ b/packages/taro-webpack5-runner/src/webpack/H5WebpackPlugin.ts @@ -83,7 +83,7 @@ export class H5WebpackPlugin { const options = this.pxtransformOption?.config || {} const max = options?.maxRootSize ?? 40 const min = options?.minRootSize ?? 20 - const baseFontSize = options?.baseFontSize || min > 1 ? min : 20 + const baseFontSize = options?.baseFontSize || (min > 1 ? min : 20) const designWidth = (input => typeof options.designWidth === 'function' ? options.designWidth(input) : options.designWidth)(baseFontSize)