From 9947a97e444fd47b3c50f43dc2df4a19442cbbe9 Mon Sep 17 00:00:00 2001 From: fxy060608 Date: Mon, 28 Jan 2019 14:16:22 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20upx=20=E8=B4=9F=E6=95=B0=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2=E5=92=8C=E6=AD=A3=E6=95=B0=E4=B8=8D=E4=B8=80=E8=87=B4?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/core/service/api/upx2px.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/core/service/api/upx2px.js b/src/core/service/api/upx2px.js index 94f1ebe2c..b0cefb831 100644 --- a/src/core/service/api/upx2px.js +++ b/src/core/service/api/upx2px.js @@ -16,7 +16,7 @@ export function checkDeviceWidth () { isIOS = platform === 'ios' } -export function upx2px (number, newDeviceWidth) { +export function upx2px (number, newDeviceWidth) { if (deviceWidth === 0) { checkDeviceWidth() } @@ -25,14 +25,17 @@ export function upx2px (number, newDeviceWidth) { if (number === 0) { return 0 } - number = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth) - number = Math.floor(number + EPS) - if (number === 0) { + let result = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth) + if (result < 0) { + result = -result + } + result = Math.floor(result + EPS) + if (result === 0) { if (deviceDPR === 1 || !isIOS) { return 1 } else { return 0.5 } } - return number + return number < 0 ? -result : result } -- GitLab